電源オフのiPhoneでも「探す」機能で位置を特定できるのはなぜか?
2021年9月21日に正式版がリリースされたiOS 15では、Appleデバイスの位置情報を捜し出す「探す(Find My)」機能が強化され、一部のiPhoneは電源がオフになっている状態でも捜すことが可能になりました。どうやって電源がオフになったiPhoneを捜し出すことが可能になるのかについて、ハッカーのJiska氏が解説しています。
Always-on Processor magic: How Find My works while iPhone is powered off
iOS 13から搭載された「探す」機能は、周辺にあるApple端末を利用したBluetoothネットワークで対象端末のBluetoothビーコンを拾い、暗号化した端末の位置情報の公開鍵をiCloudにアップロードすることで安全に端末の場所を捜すことができるというもの。
Appleが発表したオフラインの端末でも位置を突き止められる「Find My」機能の仕組みとは? - GIGAZINE
by William Hook
この「探す」機能はiOS 15で改良され、電源を切ったiPhoneでも位置情報をリアルタイムで追跡できるようになりました。
iPhoneの次期OS「iOS 15」ではスマホが電源オフでも「探す」で探知可能に - GIGAZINE
「探す」機能はBluetoothを利用するという仕組み上、電源をオフにした状態のiPhoneの位置をリアルタイムで特定することは不可能なはず。しかし、iOS 15の新しい「探す」機能では、低電力の補助プロセッサである「Always-on Processor(AOP)」が鍵を握っているとのこと。
AOPに関する公開資料はほとんどありませんが、Jiska氏によれば、AOPはiPhoneに搭載されているほとんどすべてのチップとつながっているそうです。AOPは電源管理などの基本的なタスクのみを行ったり、必要に応じてiOSを起動させたりする役割を担っているとのこと。例えば、音声アシスタントのSiriがスリープ状態からすぐにウェイクアップできるのは、このAOPがマイク信号にアクセスできるからだとAppleは解説しています。
AOPはチップのドライバーのコピーを実装することで、スタンドアローンでチップでの処理を実行可能。そして、Bluetoothチップをスタンドアロンで実行するためのIoTアプリケーションは、Bluetoothファームウェアに含まれる「mpaf」と呼ばれるThreadXスレッドで実行されます。
つまり、たとえ電源をオフにしてiOS自体をシャットダウンにしていても、本体に内蔵されているAOPによってBluetoothチップが稼働し続けているので、「探す」機能でiPhoneを捜すことができるというわけです。なお、電源がオフでも「探す」機能に対応する端末はiPhone 11以降となりますが、第2世代iPhone SEにはmpafパッチが含まれていないとのこと。
電源をオフにした状態のiPhoneで起動しているのは、AOPを除けばBluetoothチップのみとのことで、Jiska氏は、「AirTagのNFC機能を使って接続しようとしたところ、iPhoneのNFCはオフになっていた」とコメント。また、携帯電話の通信自体はバッテリーをかなり消費するので、電源オフの状態で通信を行うことはありえないとしています。
From what I observed, it's just the Bluetooth chip that is in low power mode for this feature. I tried to connect via NFC, which is implemented in the AirTags for owner identification, and NFC was off. Cellular would require too much battery.— Jiska ???????? (@naehrdine) September 30, 2021
Jiska氏は「新しい『探す』機能では、AOPだけでなく、Bluetoothチップが自律的に動作する可能性があることを、多くの人に知ってもらうきっかけとなりました。誰かがあなたのiPhoneをハックしてスパイしたとして、画面上では電源がオフになっていても、iPhoneの電源は完全にオフになっていないと考えられます。バッテリーを外すかミキサーに入れるまで、iPhoneの『電源オフ』を信用してはいけません」と述べました。