2017年9月25日

AppleのFace IDテクノロジーのセキュリティ

テクノロジー

先日発表されたiPhoneには、大きな変化がありました。最も目に付く変化は、「ホーム」ボタンがなくなったことでしょう。そう、Appleを代表するスマートフォンの最新作iPhone Xには、指紋スキャナー(Touch ID)がありません。その代わりに「Face ID」というものがついてきます。

Appleの発表イベントをご覧になった方はFace IDがどのようなものか、ある程度おわかりかと思いますが、今回はこのテクノロジーにスポットライトを当て、続いて私たちの頭から決して離れることのないテーマ、セキュリティについてお話ししようと思います。

AppleのFace IDとTrueDepthカメラとは

手短に言うと、AppleのFace IDは、利用者の顔を認識して新型iPhoneをロック解除するテクノロジーですが、決済確認の際、カメラに写った顔とiPhoneのメモリに保管されている画像を比較するためにも使われます。この処理で使われるのは、「TrueDepthカメラ」という特殊なカメラです。

iPhone Xのフロントパネル上部の細長いエリア(巨大なディスプレイで覆われていない部分)には、センサーなどの電子部品がぎっしり詰まっています。おなじみの前面カメラ、マイク、スピーカー、近接センサーや環境光センサーのほかに、赤外線カメラ、投光イルミネータ、ドットプロジェクタが新たに追加されています。

これら3つの新しい部品が構成するのがTrueDepthカメラで、顔をマッピングして本人認証用の特殊な3D画像を撮影する役を担います。では、その仕組みを見てみましょう。

投光イルミネータは基本的には単なる光源で、よい画像を撮影できるように、薄暗い場所で顔を照らすために使われます。ドットプロジェクタは、目に見えない3万個の赤外線ドットを顔面に投影します。赤外線カメラは、これらのドットを使って顔のデータを取り込みます。

ドットが顔の特徴を大まかに描き出し、3Dマップのようなものが作成されるのです。そこで、Face IDを設定するときには、頭を少し回して、iPhone Xがさまざまな角度から顔をマッピングできるようにする必要があります。

Face IDを使うたびに赤外線カメラで顔写真が撮影され、顔の特徴がiPhone Xに保存されている「3Dマップ」と一致すると、正規の利用者と見なされます。顔写真と3Dマップの類似があまり確認できない場合には、顔写真を撮るところからやり直すことができます。ここまではTouch IDと同じ働きをするように見えますが、1つ大きな違いがあります。

iPhone X は機械学習アルゴリズムに適した特殊なコプロセッサーが組み込まれていて、システムが学習し、利用者に慣れていくようになっています。そのため、認識の速度が上がるだけでなく、表情、髪型、アクセサリーの有無といった変化にも対応可能です。Appleによると、たとえばスカーフを着けたりヒゲを伸ばしたりしても、本人を認識できるとのことです。

Face IDのセキュリティ機能

Face IDの仕組みがわかったところで、このシステムが従来の顔認識技術とどのように異なるのか見ていきましょう。過去の記事で取り上げたように、従来の顔認識技術はセキュリティに大きな不安を抱えています。Appleは、いくつかの機能を実装することで、Face IDがスムーズに動作し、他のシステムよりも安全が確保されるようにしています。

まず、写真を使ってFace IDを欺くことはできません。2次元の写真に赤外線ドットを当てても、3Dマップは作れません。一方、Samsungの最新スマートフォンに実装されているFace Unlockは、自撮り写真で簡単に騙せます。

次に、Appleの主張によると、人間の顔を複製したマスクを使ってテストしたところFace IDはデバイスの所有者以外の誰もログインさせなかったとのことです。Appleのフィリップ・シラー(Phil Schiller)氏は、Face IDで保護されたiPhone Xのロックを他人が解除する確率は100万分の1であると述べています。指紋リーダーであるTouch IDの場合は5万分の1で、これと比較しても格段に良い数字です。

また、Face IDを使用するときにはカメラを見つめる必要があり、よそ見をしたり、目を閉じたりした状態では使用できません。知るかぎりではTrueDepthカメラに虹彩スキャナーは搭載されていませんが、おそらく目に関する何らかのデータと視線の方向も使用して、本物そっくりのマスクに騙されないようにしているものと思われます。

さらに、自分の顔データが誰かに盗まれる心配も不要です。Face IDでキャプチャされた画像は、コプロセッサー内にある暗号化メモリ(Secure Enclave)に保管されます。画像の処理はデバイス上でしか行われず、Appleのサーバーをはじめ外部に送られることはありません。また、画像データはSecure Enclave内で処理されるので、アプリが顔データにアクセスすることもありません。

ハッカーがiOSのSecure Enclaveファームウェアの復号キーを公表(英語記事

しかし、あるセキュリティリサーチャーがすでにSecure Enclaveの脆弱性を発見しています(英語記事)。この脆弱性は修正されましたが、他に脆弱性がないという意味ではありません。次に見つかる脆弱性は、攻撃者に認証回避を許すかもしれないですし、データ漏洩に利用されるかもしれません。

シラー氏自身が発表イベントで述べているように、絶対に安全なシステムというものはありません。Face IDの設計から言えるのは、新型iPhoneの顔認識は、単なる2D前面カメラによる従来の顔認識より安全なはずですし、Touch IDよりもセキュリティ面で優れている可能性があります。しかし、まもなく世界中のセキュリティリサーチャーがFace IDをハッキングしようとするでしょうから、このシステムの安全性が十分かどうかは、判断を下すのは時期尚早です。幸い、6桁のパスコードもまだ使用できます。パスコードも絶対に安全というわけではありませんが、少なくとも、皆さんの生体認証データがハッカーの手に渡ることはありません。