「Touch ID」のココに注目
ユーザーにとってはホームボタンに指先を重ねるだけのTouch IDだが、その仕組みは巧妙で長期的な視野に立ったうえで構築されている。
なぜiPhone 5sでサポートされiPhone 5cではサポートされないかだが、それは搭載されたSoCにある。iPhone 5sは「A7」、iPhone 5cは「A6」だからだ。A7のアーキテクチャは64bit、A6のアーキテクチャは32bitという点に注目が集まりがちだが、現在のところA7にのみ実装されている「Secure Enclave」というセキュリティ機構が重要なのだ。
Secure Enclaveは一種のコプロセッサであり、その名のとおりTouch IDにとっての"安全な飛び地"として機能する。センサーで読み取られた指紋データは、Secure Enclaveの暗号化されたメモリー領域へ転送され、アプリケーションプロセッサ(CPUとしての汎用的な部分)からは完全に切り離されるのだ。
その暗号化された指紋データは固有のIDによりセットされ、センサーとSecure Enclaveが持つ共有鍵で生成したセッションキーでなければ解読できない。指紋データはメモリー領域に保存されるため永続せず、iOSデバイスが再起動されれば失われることはもちろん、48時間経過するか認証に5回失敗すれば破棄される。
SoCにアプリケーションプロセッサと完全分離したうえで認証機構が実装されていることだけ見ても、Touch IDに対するAppleの力の入れようがわかる。
そのように堅牢なTouch IDの構造だが、アプリへの実装はそれほど難易度が高くない。Xcodeでプロジェクトを作成し、Local Authenticationフレームワークを追加、LAContextクラスのインスタンスを生成する程度で認証ダイアログを作成できてしまう。興味があれば、iOS Developer Libraryのサンプルコードを参照してほしい(関連リンク)。
もっとも、Touch IDの本格的な普及はもう少し先のことになりそう。前述したとおり、A7以降のSoCに実装される「Secure Enclave」が必須であり、旧型のiOSデバイスは対象外となるためだ。iOSデバイスのライフサイクルからすると、Touch ID非対応のiPhone 5/iPhone 5cは当面現役のはずで、必須化は来年以降だろうか。先のことはわからないが、Touch IDが単なるギミックでないことは確かだろう。
この連載の記事
-
第187回
iPhone
NFCの世界を一変させる!? iOS 11「Core NFC」の提供開始が意味するもの -
第186回
iPhone
Appleと「4K HDR」 - iOS 11で写真/動画を変える「HEIF」と「HEVC」 -
第185回
iPhone
iPhone 7搭載の「A10 Fusion」「W1」は何を変えるか -
第184回
iPhone
オープンソース化された「PowerShell」をMacで使う -
第183回
iPhone
アップル製デバイス連携の鍵、「Continuity」とは? -
第182回
iPhone
DCI-P3準拠へと歩むiPhone/iPad - WWDC基調講演で秘められた新技術は、ここにある(2) -
第181回
iPhone
WWDC基調講演で秘められた新技術は、ここにある(1) -
第180回
iPhone
WWDC直前、買い替え前にマイMacのココをチェック -
第179回
iPhone
私がiTunesを使わなくなった5つの理由 -
第178回
iPhone
今あえてiPhone「Live Photos」を知る -
第177回
iPhone
「Windows Subsystem for Linux」はOS Xのライバルとなるか? - この連載の一覧へ