いつもの通り、Appleは各種OSの最新版に搭載される多数の新機能を発表しました。WWDC基調講演では、多くの詳細をステージ上で説明しましたが、限られた時間ですべてを網羅することはできません。だからこそ、Apple幹部は基調講演後に詳細を明かすことに積極的でした。
Appleが今週初めに発表した数多くの新機能の一つに、「探す」があります。これは、Appleデバイスユーザーが紛失したアイテムを見つけるのに役立つ、iCloudベースのオールインワンツールです。iOSデバイスでは「友達を探す」と「iPhoneを探す」に代わる機能として、「探す」が提供されます。macOSでは、専用の「探す」アプリとして新たに導入されます。このアプリを使えば、紛失したiOSデバイスだけでなく、Macも見つけることができます。Macが閉じていて起動していない場合でも、見つけることができます。
Wi-Fiや携帯電話ネットワークに接続されていないデバイスの位置を特定する機能は、実はiOSデバイスにも適用されます。これはすべてBluetoothテクノロジーに基づいており、紛失したデバイスの近くにある他のAppleデバイスからの支援も受けます。
Appleは基調講演で「Find My」について触れましたが、詳細な説明はしませんでした。要点を押さえて、あとは先に進みました。しかし、 WIREDは基調講演後にいくつか重要な情報を入手しました。
まず注目すべき点は、Appleによると、新しい「探す」機能のこの暗号化方式では、ユーザーは2台の異なるAppleデバイスを所有する必要があるということです。Appleはこれらのデバイスが、常に変化する公開鍵を発信するように設計しており、これによりデバイスの位置情報データのアップロードが可能になります。Apple IDにリンクされ 、 2ファクタ認証が設定されている他のAppleデバイスだけが、送り返されるデータを復号化できます。
この要素は、Appleがセキュリティとユーザーのプライバシーを重視していることに繋がります。紛失したデバイスの位置情報データを復号化できるのは、Apple IDと2FAに紐付けられた、あなた自身のAppleデバイスのみであるため、他の誰もその情報にアクセスして紛失したデバイスの場所を知ることはできません。Appleでさえもです。
元のレポートには、Apple 自身が説明しているように、システムがどのように機能するかについてのステップごとのプロセスが記載されています。
- Apple デバイスで「探す」を初めて設定すると (Apple はこの機能が動作するには少なくとも 2 台のデバイスが必要であることを確認しています)、推測不可能な秘密鍵が生成され、エンドツーエンドの暗号化通信を介してすべてのデバイスで共有されるため、そのマシンだけが鍵を所有することになります。
- 各デバイスは公開鍵も生成します。他の公開鍵暗号化設定と同様に、この公開鍵はデータを暗号化するために使用され、対応する秘密鍵(この場合はすべてのAppleデバイスに保存されている秘密鍵)がなければ誰も復号できません。これは、デバイスがBluetooth経由で近くのデバイスに送信する「ビーコン」です。
- この公開鍵は頻繁に変更され、定期的に新しい番号に「ローテーション」されます。何らかの数学的魔法のおかげで、新しい番号は以前の公開鍵のバージョンとは相関しませんが、それでもデータを暗号化する能力は維持され、あなたのデバイスだけが復号化できます。Appleは鍵がどのくらいの頻度でローテーションされるかを明らかにしていません。しかし、ローテーションのたびに、Bluetoothビーコンを使ってあなたの動きを追跡することがより困難になります。
- 誰かがあなたのMacBookを盗んだとしましょう。たとえ犯人がMacBookを閉じた状態で持ち歩き、インターネットに接続していない状態で持ち歩いていたとしても、あなたのMacBookはBluetooth経由でローテーションする公開鍵を送信します。近くにいる見知らぬ人のiPhoneは、所有者の操作なしにこの信号を受信し、自身の位置情報を確認し、MacBookから取得した公開鍵を使って位置情報を暗号化します。公開鍵には識別情報は含まれておらず、頻繁にローテーションするため、見知らぬ人のiPhoneはMacBookの過去の位置情報を関連付けることができません。
- 見知らぬ人のiPhoneは、暗号化された位置情報と、識別情報として使用されるノートパソコンの公開鍵のハッシュの2つの情報をAppleのサーバーにアップロードします。Appleは秘密鍵を持っていないため、位置情報を復号することはできません。
- 盗まれたノート PC を探すときは、2 台目の Apple デバイス (iPad としよう) に頼ることになる。このデバイスにはノート PC と同じ秘密鍵が含まれており、同じ一連のローテーション公開鍵も生成されている。ノート PC を探すボタンをタップすると、iPad は同じ公開鍵のハッシュを識別子として Apple にアップロードする。これにより、Apple は保存されている何百万もの暗号化された場所を検索し、一致するハッシュを見つけることができます。複雑な要因の 1 つは、iPad の公開鍵のハッシュが盗まれたノート PC のものと同じではないことです。これは、見知らぬ人の iPhone がノート PC を入手してから公開鍵が何度もローテーションされている可能性が高いためです。Apple はこの仕組みを詳しく説明していません。しかし、ジョンズ ホプキンス大学のグリーン氏は、iPad が以前のすべての公開鍵のハッシュをアップロードし、Apple がそれらを整理してノート PC が以前に発見された場所を見つけ出すことができると指摘しています。
- Appleはノートパソコンの暗号化された位置情報をiPadに返します。iPadは秘密鍵を使って位置情報を復号化し、ノートパソコンの最後の位置情報をユーザーに知らせることができます。一方、Appleは復号化された位置情報を一度も見たことがなく、ハッシュ関数は不可逆的に設計されているため、ハッシュ化された公開鍵を使ってデバイスの位置情報を収集することさえできません。
簡単に言うと、「探す」機能はデバイスの位置情報を安全にブロードキャストすることを可能にします。その位置情報は、近くにある他のAppleデバイスに送信されます。この安全な位置情報データは 、2FAとご自身のApple IDで保護されている他のAppleデバイスでのみ復号化できます。つまり、ブロードキャストされたデータを使って紛失したデバイスを見つけるのは、あなただけなのです。
これは、Appleが今年後半にiOS 13、iPadOS、macOS Catalinaに搭載する最大の新機能の一つです。皆さんはこれに期待していますか?