最近は,電子商取引の基盤として,公開鍵暗号方式とデジタル署名,ICカード,暗証番号,パスワードなどを組み合わせて通信の秘匿やデータの改ざん防止,本人認証を行う「PKI(公開鍵基盤)」の整備が進んでいる。

 PKIにおいてデジタル署名は,主に暗号通信用の公開鍵やデータそのものの正当性を保証するために用いられている注6)。一方,利用者本人を特定する情報としては,ICカードや暗証番号,パスワードなどが用いられることが多い。例えばICカードには秘密鍵にアクセスするための「PINコード(暗証番号)」が設定されていて,PINコードを入力することでICカードの持ち主を確認している。

 しかし実際問題として,ICカードと暗証番号があれば,誰でもその持ち主になりすますことが可能になるという大きな問題がある。暗証番号やパスワードは簡単に他人に教えることができるし,メモしておくこともできる。セキュリティ意識の低い,たった1人の利用者がメモしたパスワードが悪意ある人物に盗み見られ,顧客の個人情報が大量に流出するかもしれない。

 では,どうすれば利用者本人を,より確実かつ安全に確認できるのか。そこで究極の本人確認技術として注目されているのが,「バイオメトリクス(生体認証)」である。バイオメトリクスは,人間の体や動きの特徴(生体情報)を使って利用者を確認する技術だ。

 本人確認に使われる生体情報は利用者の体や動きの特徴なので,基本的に他人が持つことはできない。本人を特定する情報としては非常に強力だと言えるだろう。また生体情報は,利用者が「忘れない」,「なくさない」といった特長もある。こうした理由から,バイオメトリクスは極めて安全性の高い,究極の本人確認技術として注目されている。

実用化が進むバイオメトリクス

 バイオメトリクス技術にはいろいろな種類があるが,(1)利用者の生体情報を登録する「登録処理」,(2)利用者の本人確認を行う「照合処理」から成るという基本的な原理は共通している(図7)。

図7●バイオメトリクス技術の基本的な仕組み
図7●バイオメトリクス技術の基本的な仕組み
指紋認証の場合の基本的な処理の流れを示した。利用者の指紋から特徴量を抽出して登録する「登録処理」と,登録指紋とセンサーで読み取った指紋を照合する「照合処理」から成る

 登録処理では,センサーが取り込んだ利用者の生体情報から個人の違いを表す特徴(特徴量)を抽出し,テンプレートとして事前に保存しておく。その後,照合処理においては,その時点で取り込んだ生体情報から特徴量を抽出して先ほどのテンプレートと照合する。照合した結果,これらがどれだけ似ているかを示す類似度が得られる。類似度が一定のしきい値よりも大きければ本人,小さければ他人として判断する。

 現在,実用化されているバイオメトリクス技術としては,指紋や顔,静脈のパターン,目の虹彩などを利用した方法などがある(表1)。現時点で最も代表的な方法と言ってよいのが「指紋認証」だ。登録処理では,指紋の線(隆線)を強調したり,ノイズを除いたりする処理を行い,指紋をクリアな状態にする。次に変換した指紋情報から特徴量を抽出する。隆線の終わりの点(端点)や分岐する点(分岐点)などの位置や方向などが特徴量となる。これを本人確認するための情報(テンプレート)としてシステムに保存しておく。

表1●実用化されているバイオメトリクス技術の例
指紋や顔,虹彩など様々な身体的特徴を用いた本人確認技術が実用化されている。安全性,利便性,利用者の受容性,コストといった面で,方法ごとに長所,短所があり,あらゆる点で理想的な方法はまだない

 指紋認証は安全性(本人特定の確実性)が高く,装置が小さいことが特徴である。写真1はスイープ型指紋センサーと呼ばれるもので,細長い金色の部分の上で指をすべらせて,指紋を取り込む。センサー自体のサイズは10×3ミリ程度と小さいので,携帯電話やPDAなどのモバイル端末への利用が進んでいる。

写真1●スイープ型指紋センサー
写真1●スイープ型指紋センサー
金色の部分の上で指紋を滑らせて,指紋を取り込む

 「顔認証」は,パスポートにICチップを埋め込んだ電子パスポート・システムへの採用が決まっており,国際間での利用を可能にするためのインタフェース仕様やシステム仕様の標準化が進んでいる。パスポートはもともと顔写真で本人かどうかを確認するので,顔認証の採用は自然な流れと言えるだろう。

 顔認証は指紋認証に比べると精度は低い。しかし利用者が装置に触れる必要がないので利便性が高い。また,顔は人が人を認識する際にごく自然に使われている情報であることから,受容性が高い(心理的抵抗感が薄い)という利点もある。さらには係官が自分の目で乗客と顔写真との照合を行うこともできるので,システムの精度の低さを補うこともできる。万人が利用し,最終的には係官が本人確認を行うパスポートには適した方法だと言えるだろう。

 最近,銀行の窓口やATM(現金自動預け払い機)における預金者の本人確認への利用が検討されているのが,「静脈パターン認証」だ。手や指の皮膚付近にある静脈のパターンを利用して本人確認を行う方法である(写真2)。静脈パターン認証には,「指紋に比べ受容性が高い」,「顔認証よりも安全性が高い」,「指紋認証と同程度の安全性を持つ」といった特徴がある。そのため,やはり万人が利用し,自動的な本人確認が必須となる銀行などでの利用に適したバイオメトリクス技術ということができる。

写真2●指の静脈パターン認証システム
写真2●指の静脈パターン認証システム
指の静脈パターンを読み取り,認証する。銀行の窓口やATMにおける預金者の本人確認への利用が検討されている

 バイオメトリクス技術の性能は,安全性や利便性,受容性,コスト,装置の大きさなど,様々な角度から評価される。バイオメトリクス技術にはそれぞれ長所と短所があって,すべての評価が最良になる方法は今のところ存在しない。しかし今後広範な分野で本人確認技術のニーズが高まることは間違いなく,様々なバイオメトリクス技術が開発され,進出していくに違いない。

 暗号技術の進化は,開発者と,暗号を読み解こうとする人たちとのいたちごっこの歴史だったとも言える。情報を盗もうという人間がいる限り,暗号・認証技術は進化し続けるだろう。本稿をきっかけに1人でも多くの読者がセキュリティ技術に関心を持ち,安全なシステムの構築に努めてくれるようになれば幸いである。

RSA暗号の心臓部は逆算困難な関数

 RSA暗号は「落とし戸付き一方向性関数」を用いて暗号化を行っている。「落とし戸付き一方向性関数」とは,平たく言えば一方通行の関数である。関数には,変換することは容易だが,元に戻すことが極めて困難なものがある。そうした関数の中で,あるヒント(落とし戸)を使えば容易に元に戻せるような関数を「落とし戸付き一方向性関数」と呼ぶ。

 RSA暗号で用いられている落とし戸付き一方向性関数は次のようなものだ。

 y = xe mod N

 ここで平文の数値データは「x」である。そして「y」が,暗号化された数値データとなる。

 「mod」とは商計算の余りを求める関数だ。例えば5mod3は,2である。また,「N」は2つの素数,「p」と「q」の積とする。「e」は「(p-1)×(q-1)」と互いに素であるような正の整数である。

 eとNの値が与えられている場合(これらが公開鍵となる),xからyを求めることはそれほど難しくはない。では,逆はどうか。

 Nが小さければ,暗算でもNおよびeとyからxを計算することはできる。ところがNが10進数で300桁もあるような場合,実は,最先端のコンピュータ・サイエンスを駆使しても効率的な解法は知られていない。強引にやろうとしても膨大な(天文学的な)時間が必要となる。つまり,xの値を求めるのは現実問題としては不可能なのだ。

 そこで登場するのが「落とし戸(ヒント)」だ。この関数では,Nの素因子であるpとqの値が落とし戸となる。それらの値が分かっている場合は,次のようにして,yから効率的にxを求めることができる。まず,ユークリッドの互除法という計算法で

 e・d mod(p-1)(q-1)=1

となるdを求め,次に

 yd mod N

を計算すると,xが求められる。つまり,pとqを秘密鍵とすることで,簡単に暗号を復号化できるのだ。これがRSA暗号の基本原理である。


宝木 和夫(たからぎ かずお)/日立製作所システム開発研究所 主管研究長
1977年東京工業大学大学院修士課程修了。同年,日立製作所に入社し,以来,システム開発研究所で衛星放送暗号方式,楕円曲線暗号など情報セキュリティ技術の研究開発に従事。著書に「インターネットセキュリティ」,「ファイアウォール」(共著)など

三村 昌弘(みむら まさひろ)/日立製作所システム開発研究所 主任研究員
1997年東京工業大学大学院物理情報工学専攻博士課程修了。同年日立製作所に入社し,以来,システム開発研究所において指紋照合装置およびバイオメトリクス認証システムなどの研究開発に従事