Hatena::ブログ(Diary)

TRANS

2007-05-30

CAPTCHAをアクセシブルにするための色々な取り組み

自分用メモなのですが、せっかくなので公開します。CAPTCHA(Webサービスに登録する時やブログにコメントをつける際に認証を求めてくる、文字がぐにゃっとした画像)を知っている人も多いと思うし、それがスクリーンリーダー利用者などの、一部の人たちにとってはアクセシビリティ上大問題ということを知っている人も多いと思います。じゃあ、それではアクセシビリティは無視か?!というとそうでもなくて、どうやら色んな取り組みが行われているようです。


スクリーンリーダーのCAPTCHAの読み上げ方

まず、おさらいです。スクリーンリーダーはどういうふうにCAPTCHAを読み上げるのか。英語の動画ですが、次の動画が最も分かりやすい。

D

内容はちょっと違うのですが、海外の大手SNSで登録の際にCAPTCHAを使っているところが多くて、スクリーンリーダー利用者は登録できないじゃないか!というビデオ。でも、別にSNSだけではなく、色んなWebサービスで使われていますよね、最近は。


ただ、このCAPTCHAに関しては、やはり疑問に思う人も少なからずいるみたいで、色んな取り組みが各地で行われていますよ、というのがこのエントリーの趣旨です。ちなみに、W3CもCAPTCHAに関しては「うーん、どうなのよ、それ」と懐疑的なご様子。(参照:Inaccessibility of CAPTCHA


CAPTCHAへのアプローチ方法

では、実際どういった取り組みの方向性があるのか。詳しくは上記で紹介したW3Cのページが端的に分かりやすく説明しているのですが、Wikipediaにもそれに近い情報があります。(参照:”Attempts at accessible CAPTCHAs”)W3Cのページから要点だけ和訳してしまうと、

  1. ロジックパズル(一般常識や簡単な計算式などに答えてもらう)
  2. サウンドアウトプット(コンピューターでは認識しにくい音声でパスワードなどを流し、認証を行う)

ということらしいです(W3Cのページではほかのアプローチも紹介されていますが、それらはCAPTCHAを回避した上で、どんな解決策が考えられるのかということみたいですので、あえて除外しました。)


ロジックパズルという取り組み

ロジックパズルとは、例えば「1+1は何か」などの簡単な計算式とか、「空は何色か」などの一般常識に回答してもらうことにより、その認証を行うというもの。実際に、作られたものもあるようです。


論理型認証方式のBrainBuster | アクセシビリティBlog | ミツエーリンクス


ただ、このロジックパズルの問題点は、上記W3CやWikipediaなどでも書かれていますが、

  1. こういった質問を完全に自動化するのが難しい。(もしパターン数を決めてしまえば、その公式がスパマーに破られる可能性がある)
  2. 一般常識が一部の人たちによっては一般常識ではないかもしれない。
  3. 認知や知的に障がいがある人にとっては答えるのが難しいかもしれない。

という問題点があるようです。


また、このロジックパズルには違った方法もあります。どこのMLで紹介されていたのかは忘れましたが、あるブログのコメントが取り組みとしてアリなんじゃないか、と。


そのブログでは、コメントをする際に「確認」というふうに文字を打ち込まないといけません。(要はCAPTCHAのように)しかし、これではアクセシビリティ上の問題を抱えたままです。


しかし、その「確認」の画像にalt属性で「確認を入力してください」とすると、一気にスパムの餌食になってしまいます。そこで、文字に対するalt属性を「確認」とするのではなく、「「かくにん」を漢字変換したものを入力して下さい。1文字目が「たしかめる」で2文字目が「みとめる」です。」というふうにalt属性に書かれているのです。


要は、このalt属性の部分に対して、任意の文字列を自動的に変換するようなスクリプトやプログラムがあれば、スクリーンリーダーではない人はCAPTCHAの文字列を、スクリーンリーダー利用者はalt属性を、というような使い分けができるのじゃないか、ということです。


ただ、それでも英語だとどうしてもアルファベット数が少なく、見破られてしまう可能性もあるかもしれません。これらの点を踏まえると、音声をうまく合成して、コンピュータには聞き取れないが、人間には聞き取れる、つまりサウンドアウトプットのほうがより妥当な解決策であるような気がします。


サウンドアウトプットという取り組み

この方法はGoogleも取り組んでいるようです。今年3月に米国でCONFERENCE 2007 Technology & Persons with Disabilities Conference(通称:CSUN)というイベントがあり、そのカンファレンスに出席したGoogleのセミナーの内容がいくつか報告されています。

詳細はイマイチ分からないのですが、Googleの各種Webサービスに登録する際には、スクリーンリーダー向けのパスワード認証を置いておく(スクリーンリーダーではない人たちはCAPTCHAを読む)。単にCAPTCHAの文字列を音声で読み上げるだけでは、スパマーに読み出されてしまうから、中国語か何かの文章を背景に流しておき、その上でCAPTCHAの文字列を読み上げさせる。ただ、中国語が分かる人からすると、むしろその音声の意味が分かってしまい、認証の失敗率が高くなってしまう、とのことです。


また、拓殖大学:音声による認証テストという調査結果もあります。どうやら、背景に音声を流し込んでおいて、その上で必要な文字を流すというGoogleのような手法のようです。


実際に使えるかどうかは分かりませんが、1つの方法としてはこれからメジャーになっていくのかもしれません。


まだまだ取り組みとしてはいろんな方法が議論されて、完全な標準というのはできてはいませんが、今後もこういった動きには注目していきたいなと思います。

Sig.Sig. 2007/05/30 23:44 CAPTCHAはうちのサイトでも使ってますが、アクセシビリティだけじゃなくユーザビリティも著しく低下するようです。
スパムコメントはほぼ無くなるのですが、普通のコメントも激減するという... 知り合いはわざわざmixiメッセージで「使いにくい」といってくる始末です。
たしかに1(いち)だかI(あい)だかl(える)だか判らなかったりしますもんね^^;

aratako0aratako0 2007/05/31 09:28 Sig.さん、コメントありがとうございます。
確かに分かりにくいですよね。僕もほかのブログにコメントつける際にCAPTCHA合ったら、途中で止めちゃうことありますし。
そういえば、はてなもCAPTCHA導入しているみたいですね。
http://q.hatena.ne.jp/1178534290
コメントやTBスパム対策がすごいなーと思っていたら、理由はこれなんですよね。

いしだいしだ 2007/06/05 08:26 ロジックパズルについて
1.自動乱数化は非常に簡単ですから、これは問題はありません。
2.「一般常識」をどこまで絞り込むかですね。
3.視覚障害だけでなく、ディスクレシア(読み書き障害)の人の中には、CAPTCHAの文字が判読できない人もいると思われます。また、大文字小文字の入力の違いができない人もいると思われます。ロジッックパズルで問題が生じる障害の人もいると思われますが、すべての重さのすべての障害に完全に対応するWebサイトはそもそも存在しない中で(ロジックパズルをクリアできなくて、その先の操作や文章閲覧が可能な人およびその逆の人がそれぞれどれくらいいるか、精神障害、知的障害も含めて調査されていないですよね)、ロジックパズルだけ、これこれの障害の人に不向きだからというのも総合的に見てどうかなとも思います。

サウンドアウトプット
これも二つの音声の中から必要な情報を抜き出すことが困難な障害の人のことが考えられていませんね。また、音声読み上げソフトでも雑音のようなものが入ると非常に聞き取りづらいと当事者の人が言われています。

ロジックパズルであろうとCAPTCHAであろうと、ユーザビリティ面も含めて敷居を高めているのは確かです。楽天市場のプレゼントで出現するCAPTCHAなど、視力がよくても何度も失敗します。根本的には、セキュ確保のためには、まったく異なるアプローチが必要でしょう。(とここまで書いて投稿しようとしたらハテナのCAPTCHAを読みそこなって、再入力を求められました。笑)

aratako0aratako0 2007/06/05 10:04 石田さん、コメントありがとうございます。
確かにどちらとも技術的にはクリアでも、それが使う人にとっては難しくするというものは一理あります。そういう意味では、CAPTCHAは完璧な解決策ではないのだとも。
うーん、難しいところです。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/aratako0/20070530/p1