Appleが2月19日に公開した「Apple Platform Security」を読み解きながら、Appleのセキュリティの現在と、注目すべきトピックについて掘り下げたい。
Appleにおけるセキュリティ実装の成功体験として現在も重要な転換点となった技術は、指紋認証の「Touch ID」だった。
Touch IDは2013年9月発売のiPhone 5sで導入され、その後iPad、そして2016年モデルのMacBook Proへと導入が進んだ。その翌年の2017年にiPhone Xが登場し、TrueDepthカメラが搭載され、生体認証はFace IDへと変更された。
5万分の1だったTouch IDの誤認率を、Face IDでは100万分の1へと改良し、目を開けているかどうかを検出する仕組みも導入。より「本人がロック解除の意図を持っていること」を確認するようになった。
このTouch IDは、Appleにとって、ユーザー体験とセキュリティの両立という、どちらも諦めないで取り組む姿勢における成功体験だった。
現在も続く「基本はパスコード」によるセキュリティ
プライバシーの説明でも折々で説明していることだが、Appleはデータをできるだけクラウドサーバーに送らず、端末内で保管・処理することでプライバシーを保とうとしてきた。
そのため、iPhoneだけでなくMacにも、強力な機械学習エンジンであるNeural Engineを搭載している。特にモバイルデバイスでは、機械学習処理は端末内ではなく、AmazonやGoogleのクラウド内で行った方が高い処理性能を活用できることが常識だった。結果的に、これらの企業のサーバーに個人情報を預けるという選択肢を、顧客が取らざるを得なくなっていた。
AppleがNeural EngineをiPhoneに導入し、端末内での機械学習処理性能を飛躍的に高め続けている動機は、Appleのプライバシー性能を高く維持しながら、顧客に機械学習処理を生かしたアプリケーションを体験してもらうためだ。
こうしたプライバシーの思想を体現するための実装と、iPhoneが登場して以来、Appleは4桁のパスコードによるデバイスのロックによって、iPhoneの端末内にある個人情報を端末内に守ってきた。現在のiOS標準では6桁のパスコードとなっており、数字以外を織り交ぜたより長いパスワードも設定可能だ(筆者はパスワードにしている)。
しかし、iPhoneの販売が始まった2007年から現在まで、数字の組み合わせによるパスコードが、iPhoneにおける最大のロック方法である点は変わっていない。
問題解決と如実に表れた成果
一般的なユーザーは、iPhoneのロック解除を1日80回ほど行うそうだ。睡眠を7時間取るとして、起きている時間は17時間で80回。1時間あたり約5回はロック解除している計算だ。
という話を聞くと、自分は1時間にもっと頻繁にロック解除している、と思った人も少なくないはずだ。電話がかかってきたときにロック解除する必要はないが、メールやLINE、その他のアプリを使うためにロック解除は必要となり、生活の中でのiPhoneの使用範囲が増えれば増えるほどロック解除の頻度も高まる。
生体認証導入以前、この80回のロック解除ごとに、4桁のパスコードの入力が必要だった。つまり、1日320タップはiPhoneの中身を見るためだけに費やしていた。そのため、同じ数字4桁、特に6や9といった右手で握って最も近い数字を設定している人も頻繁に見かけたほか、そもそもパスコードを設定していない人も多かった。Appleによると、Touch ID導入以前は49%しかパスコードを設定しておらず、半数のiPhoneはロックなしで使われていたという。
前述の通り、パスコードはiPhoneの最大のロック方法であり、これが設定されなければ、いくらAppleがプライバシー性能を高めても、そもそものセキュリティが保たれず、さまざまな情報が見放題となってしまう。
この状況を打開すべく、パスコードを設定してもらいながら、ユーザーが無駄なタップを毎日しなくて良いようにする高いユーザビリティを発揮する方法、これがTouch ID導入の動機であり、その目論見は見事に成功した。Touch ID導入後のパスコード設定率は92%にまで上昇したからだ。
マスク対策とパスコード依存の解消
2020年のCOVID-19流行で、日常生活にマスクがつきものとなり、iPhoneのロックは再び危機に瀕している。
Face IDは、顔の2Dデータと深度データを数学的に処理して格納し、TrueDepthカメラで読み取ったデータと照合する仕組みだが、顔の半分が隠されてしまうマスク着用では、Face IDに活用する情報が半分失われることを意味するわけで、照合できなくなる。
Appleは当座の対策として、マスクを装着している顔を検出したら顔認証を試みるのをやめ、すぐにパスコード入力画面を表示することで、待たされることなくロック解除を行えるようにする対策を取った。しかし、これはユーザーからは不評だった。Touch ID導入前後のパスコード設定率の変化からも明らかで、人々はiPhoneを使うためにパスコードを入力したくないからだ。
そこでAppleは、次なる対策をiOS 14.5に導入した。Apple Watchとペアリングしている場合、マスクの顔を検出すると、近くに本人が装着しているApple Watchがあるかどうかを探し、見つければiPhoneのロックを解除してしまう仕組みだ。これはMacにも導入されているロック解除方法だ。
Apple Watchからは鍵を開けた音と振動が発せられ、自身のApple Watchがロック解除に使われたことを知らせる。もし意図しないロック解除だった場合は、Apple Watchの画面をタップすればすぐにiPhoneをロックできる。
しかし、ここには2つの大きな問題がある。
まず、Apple Watchが必要なことだ。iPhone単体での認証ではないため、Apple Watchを持っていないとマスクをしたままのロック解除という新機能の恩恵にあずかれない点は、各製品が独立して「ただ動作するだけ」(Just work)が基本のApple製品らしからぬ対応ともいえる。
マーケティング的には奇策であり、「iPhoneユーザーの中でのApple Watch普及率」を高める動機を与えるかもしれない。Apple Watchは現在、ファミリー共有設定を除きiPhoneとのペアリングが前提となっており、「iPhoneユーザーの中でのApple Watch普及率」はApple Watch普及における重要な指標となる。ちなみに、iPhoneのアクティブユーザーベースは10億台で、Apple Watchのアクティブユーザーベースの最大値もここになる。
もう一つの問題は、Apple Watch認証が絡んできても、依然として数字のパスコードがiPhoneにおける最大のロック方法であるという事実が変わらない点だ。
Apple Watch認証を行う場合、iPhoneがパスコードによりロック解除され生体認証が使える状態、かつApple Watchも4桁のパスコードでロック解除されているか、腕に装着したあとにiPhoneのパスコードによりロック解除されることが条件となる。
つまり、iPhoneとApple Watchのいずれもパスコードでのロック解除が済んでいれば、マスクを装着した自分以外の顔が目の前に来れば、自分のiPhoneのロックが解除されてしまうのだ。あくまでも緊急避難措置とはいえ、まったく生体認証を介さずロック解除できてしまう条件が存在することは問題だと思う。
Appleはいつのタイミングで、パスコードよりも生体認証を優越させるのだろうか。そのカギとなりそうなのが、前回紹介したSecure Neural Engineの実装方法の変更にあるのではないだろうか。