膨大な数のコンピューターが、日々同じ課題を解決しています。あなたが別人ではなく本当にあなたなのかどうかを確認しようとしているのです。そのために最も多く使われているツールがパスワードチェックです。しかし、パスワードを盗むのはパスワードを忘れるのと同じくらい簡単なこと。パスワードにはさまざまな問題があり、ユーザー認証用に別のシステムが必要であることが浮き彫りになっています。とてもシンプルで魅力的なアイデアが、生体認証です。スキャナーの上に指を置くか、カメラを見るか、合い言葉を言うだけです。自分の指や目、声は、いつも持ち歩いていますよね?他人のものとは違います。残念ながら、この魅力的なアイデアには問題が山積みのため、今もまだGoogleへのログインやATMからの現金引き出しに指紋を使うことはできません。
この記事ではいくつかの問題を詳しく取り上げますが、まずは概要から説明しましょう。主な問題は、この生体「パスワード」の変更がほぼ不可能であること、生体「パスワード」に基づいて本当に安全な暗号化を実装するには課題が多いことです。コンセプトレベルのものから実用化されているものまで見ていくと、生体認証には明らかに重大な問題があることに気付くはずです。生体的な特徴の多くは、単純で安価なツールを使って偽造することが可能なのです。
人違いの危険
生体認証と通常のパスワードベースの認証の主な違いは、オリジナル(マスター)のサンプルとチェック対象のサンプルが完全には一致しないことです。同じ指から完全に同一の2つの指紋を採取することはできません。この問題は、顔の認証を行うときにはさらに厄介です。顔の特徴は変わることもありますし、光りのあたり具合や時間帯、メガネやひげの有無、目の充血、お化粧によって判読できない場合もあります。自然な老化については言うまでもないでしょう。声も同様に、風邪など無数の要因に影響を受けます。このような状況では、毎回本人を許可して他人は絶対に承認しないというシステムを構築することは極めて困難です。
各生体認証システムはこの問題を解決するために、スキャンされたサンプルからノイズや一時的な要素、不要なものをすべて排除し、数学的な比較に使用できる特徴だけを残そうとします。とはいえ、この「スケルトン」でさえも、確率の観点からでしかオリジナルと一致できません。中程度のセキュリティシステムでは、10,000回のうち1回は他人を認証し、50回に1回は本人をブロックするのが普通と考えられています。モバイルプラットフォームの場合、明るさや振動といった屋外の不安定な状況によって、大幅にエラー率が上昇します。Androidの顔認証が30~40%のケースで失敗するのはそのためです。
一生もののパスワード
パスワードは忘れたり盗まれたりしても変更することができます。鍵をなくしてしまったら、ドアの錠を付け替えればいいでしょう。でも、ブラジルや日本の銀行で起きたように、手のひらの写真を使って銀行口座が「ロック」されてしまい、この掌紋のデータベースが盗まれてしまったら、どうすればいいのでしょうか?
自分の手を変えるというのは、とてつもないチャレンジです。今は手のひらを偽装する技術が存在しないといっても、5年後か10年後も開発されないと誰が保証できるでしょうか。
この根本的な問題は、指紋によって部分的に解決できるかもしれません。10本全部ではなく2~4本だけを登録しておけば、後でパスワードを変更するための指が何本か残ります。しかし、これでは全然足りません。一生を考えれば少なすぎると言ってもいいでしょう。オンラインアカウントのハッキングはあまりにも頻繁に起きるため、重要な生体情報を預けるのは少々不安です。多くのサービスが、生体情報の派生物である「スケルトン」だけを保存しているからといって、あまり安心はできません。たとえば指紋は、オリジナルと同一とはいかないまでもチェックを通る程度には復元できることが、多くの研究によって証明されています。
さらに、オンラインの生体認証ではプライバシーに関する懸念も生まれます。生体「パスワード」は、あなたがあなたであることをはっきりと識別します。そのため、同じソーシャルネットワークで2つの異なるアカウントを持つことができなくなります。サイトには、同一人物であることを特定するためのツールが十分にあるからです。厳密に言うと、数百人、あるいは数千人ものユーザーが、実質的に区別の付かない生体的特徴を持っていることもありますが、ユーザーリクエストに付随するGeo-IPなどのメタデータを使用することで、ユーザーごとに完全に一意のユーザープロフィールをセットアップすることは十分に可能です。もしすべての人気Webサービスに生体認証を実装できたとしたら、オンラインユーザーの追跡はいとも簡単なことになるでしょう。
デジタルロッカー
パスワードの主な用途は、おそらく生体認証も同じでしょうが、さまざまなデバイスやサービスへのアクセスを制限することです。2番目に多い使い道は、デバイスに保存されているデータへのアクセス制限です。しかし、この2番目のケースで生体機能を活用することは困難です。
指紋認証のドアロックのついた金庫に文書を入れた場合、データを保護するのは金庫の壁です。指紋スキャンのロックを回避するには強力なドリルを使わなければなりません。コンピューターでアクセスコントロールを実行した場合では、どんなチェックからもあきれるほど簡単に逃れることができます。そこで、コンピューターにおいて鉄の壁に相当するのが暗号化です。何かをパスワードで暗号化すると、特殊な暗号鍵がパスワードを使用して生成されます。パスワードを1文字でも変えると、暗号鍵はまったく違ったものになり使えなくなります。しかし、生体「パスワード」はアクセスを要求するたびに微妙に異なるため、暗号化に直接使うには複雑すぎます。そのため、既存の大衆市場向け「デジタルロッカー」はクラウドベースの支援に依存しており、生体照合はサーバー側で実行されます。一致した場合、サーバーから暗号鍵がクライアントに提供されます。もちろん、これにより大量のデータが漏えいするという大きなリスクが生じます。サーバーがハッキングされると、暗号鍵と生体データの両方が盗まれる恐れがあるからです。
生体認証の実用例
SF映画や軍事利用はさておき、実生活で目にする可能性のある自動生体認証には2つのケースが考えられます。一部の銀行では生体認証の試験導入が行われており、ATMには手のひらのスキャンを使い、電話ベースのサービスデスクには声紋認証を利用しているようです。生体認証の2つめの実用例は、主にラップトップやスマートフォンなどの消費者向けデバイスに埋め込まれたスキャナーです。前面カメラを顔認識に使用し、専用のセンサーで指紋を認識するというケースがあります。一部のシステムでは声紋認証も利用されています。こうした消費者向けの導入には、上述の生体認証の一般的な問題に加えて、固有の制限があります。これはCPUの能力やセンサーの価格、物理的なサイズといった制約によるもので、開発者はこうした制約に対処するために、システムのセキュリティや堅牢性を犠牲にしなければなりません。そのため、一部のスキャナーは一般的なプリンターで指紋を印刷した濡紙やゼラチン造形で簡単にだますことができます。また、詐欺師はお金を稼ぐために便利な偽指を作成することもあります。こうしたツールを用いた犯罪手口はすでに存在します。一方で、本物のユーザーがアクセス権を得ようとして何度も指をスワイプすることも珍しくありません。ほとんどのセンサーは、指が濡れている場合やクリームを塗っている場合、ちょっとした汚れや傷、やけどがあると、認識できないことがあるからです。
顔認識システムは、本物の顔と写真を見分けることがほとんどできません(ただし、まばたきを要求するなど、システムに動きをチェックする機能があれば対処法はあります)。とはいえ、顔認識によってモバイルデバイスのロックを解除する時点で、プログラムは光の具合や全体的な環境に大きく左右されることが多いため、さらにチェックをかけることで状況を悪化させたいとは思わないでしょう。それに、昔ながらのパスワードという予備の手段も用意しておかなければ、暗いところでデバイスのロックを解除できなくなってしまいます。
声紋認証システムの開発者の多くは偽物を見破ることができると主張しています。録音もなりすましも検知できるそうです。ところが実際には、最も強力なシステムにしか、必要な高負荷のチェックをすべて実行することはできません。また、一部の研究者によれば、音声変換ソフトウェアは17%の確率で認証システムをだますことができるそうです。完全なリアルタイム分析をモバイルデバイスに実装するのは難しいため、クラウドからの支援が必要になりますが、クラウドベースの認証は遅く、インターネット接続の品質に左右され(そもそも接続がなければ使えません)、中間者攻撃などさらなる攻撃を受けやすくなります。ちなみに、音声のサンプルは他の生体サンプルよりもずっと簡単に手に入るため、音声認証システムへの中間者攻撃は特に危険です。
このように、正規のユーザーにとって実用面での不便さがあり、セキュリティが十分ではないことから、生体認証は従来のパスワードや電子証明書に代わってモバイルデバイスのセキュリティにおける標準になることができていません。生体認証による安全で信頼できる身元確認は現在、空港の出入国管理ゲートや、オフィスの入口のセキュリティチェックポイントなど、管理が行き届いた状況でしか可能ではありません。