
Appleデバイスの自動ロック解除
複数のAppleデバイスを使用する場合の利便性を高めるため、特定の状況下では一部のデバイスでほかのデバイスのロックを自動的に解除できます。自動ロック解除は以下の場合に行うことができます:
iPhoneでApple Watchのロックを解除できます。
Apple WatchでMacのロックを解除できます。
ユーザが鼻と口を覆った状態で検出された場合、Apple WatchでiPhoneのロックを解除できます。
Apple Vision ProでiPhoneのロックを解除できます。
iPhoneミラーリングを使用してMacでiPhoneのロックを解除して表示できます。
これらの使用方法はすべて、相互に認証されたStation-to-Station(STS)プロトコルという同じ基盤の上に構築されています。このプロトコルでは、機能が有効になったときに長期鍵が交換され、リクエストごとに一時的な一意のセッション鍵がネゴシエートされます。基盤となる通信チャネルにかかわらず、STSトンネルは両方のデバイスのSecure Enclave間で直接ネゴシエートされ、すべての暗号化要素が安全なドメイン内にとどまります(ただしSecure Enclaveを搭載していないMacコンピュータは例外で、STSトンネルの終点がカーネル内になります)。
あるデバイスから別のデバイスのロックを解除するには、両方のデバイスが2ファクタ認証を使用して同じApple Accountにサインインしている必要があります。また、ユーザは2台のデバイス間のロック解除関係を個別に有効化する必要があります。
ロック解除
ロック解除シーケンスは、全体を2段階に分けることができます。
ロック解除されるデバイス(ターゲット)が暗号ロック解除シークレットを生成し、ロック解除を実行するデバイス(イニシエータ)に送信します。
イニシエータは、以前に生成されたシークレットを使用してロック解除を実行します。
デバイスで自動ロック解除が可能な状態にするため、両方のデバイスがBluetooth Low Energy(BLE)接続を使用して接続されます。次に、ターゲットデバイスによってランダムに生成された32バイトのロック解除シークレットがSTSトンネル経由でイニシエータに送信されます。生体認証またはパスコードによる次回のロック解除時に、ターゲットデバイスがそのパスコードから導出された鍵(PDK)をロック解除シークレットでラップし、メモリ内のロック解除シークレットを破棄します。
ロック解除を実行するため、デバイスが新しいBLE接続を開始してから、ピアツーピアWi-Fiを使用して互いのおよその距離を安全に取得します。デバイスが指定された範囲内にあり、必要なセキュリティポリシーに適合していれば、イニシエータがロック解除シークレットをSTSトンネル経由でターゲットに送信します。その後、ターゲットが32バイトの新しいロック解除シークレットを生成し、イニシエータに返します。イニシエータによって送信された最新のロック解除シークレットでロック解除レコードが正常に復号されると、ターゲットデバイスのロックが解除され、PDKが新しいロック解除シークレットで再ラップされます。最後に、ターゲットのメモリ内の新しいロック解除シークレットとPDKが破棄されます。
Apple WatchによるMacのロック解除
上記のロック解除フローは、ペアリングされているMacのロックをApple Watchで解除するときに使用されます。また、パスワードを入力せずにアプリのリクエスト(パスワードの表示やアプリのダウンロードなど)を承認するときにも使用されます。Apple WatchがペアリングされているiPhoneのロック解除に成功すると、Apple Watchに通知が表示され、関連付けられた触覚が再生されます。
ペアリングされているMacのApple Watchからのロック解除を正常に行うには、以下の条件をすべて満たす必要があります:
関連付けられたApple Watchが手首に装着され、ロックが解除されたあと、Macのロックが別の方法で1回以上解除されている必要があります。
MacとApple Watchとの間の距離が2~3m以内である必要があります。
Apple Watchのロックが解除されている必要があります。
Apple Watchが睡眠モードでない必要があります。
Apple WatchによるiPhoneのロック解除
Apple Watchを使用したiPhoneのロック解除には、追加のセキュリティポリシーが適用されます。通知にある「iPhoneをロック」ボタンをユーザがタップすると、Apple WatchがBLE経由でiPhoneにロックコマンドを送信します。iPhoneはロックコマンドを受信するとロックされ、Face IDと、ほかのデバイスからのロック解除の両方を無効にします。次回のiPhoneのロック解除は、iPhoneのパスコードで行う必要があります。Apple Payやアプリの承認などのその他の操作では、Apple WatchをiPhoneのFace IDの代わりに使用することはできません。Apple WatchがペアリングされているiPhoneのロック解除に成功すると、Apple Watchに通知が表示され、関連付けられた触覚が再生されます。
ペアリングされているiPhoneのApple Watchからのロック解除(有効な場合)を正常に行うには、以下の条件をすべて満たす必要があります:
iPhoneのロックが以下のように解除されている必要があります:
関連付けられたApple Watchが手首に装着され、ロックが解除されたあと、別の方法で1回以上解除されている。
過去6.5時間以内に1回以上解除されている。
Apple WatchまたはiPhoneのロックが最近解除されているか、装着している人がアクティブである(睡眠中でないなど)ことを示す物理的な動きをApple Watchが感知している必要があります。
鼻と口が覆われていることをセンサーが検知できる必要があります。
iPhoneとApple Watchとの間の距離が2~3m以内である必要があります。
Apple Watchが睡眠モードでない必要があります。
iPhoneが、Face IDによるデバイスのロック解除の実行が許可された状態である必要があります。(詳しくは、Optic ID、Face ID、Touch ID、パスコード、パスワードを参照してください。)
Apple Vision ProによるiPhoneのロック解除
Apple Vision ProによるiPhoneのロック解除には、同様のセキュリティポリシーが適用されます。ユーザはApple Vision ProとiPhoneをペアリングし、Apple Vision ProでそのiPhoneを自動ロック解除することができます。また、対応するiPhoneアプリでは、Apple Vision Proでアプリ内認証を行うこともできます。ペアリングしたiPhoneのロックをApple Vision Proで解除できた場合、Apple Vision Proに通知が表示されます。通知にある「iPhoneをロック」ボタンをユーザがタップすると、Apple Vision ProがBLE経由でiPhoneにロックコマンドを送信します。iPhoneはロックコマンドを受信するとロックされ、Face IDと、ほかのデバイスからのロック解除の両方を無効にします。次回のiPhoneのロック解除は、iPhoneのパスコードで行う必要があります。Apple Payでは、Apple Vision ProをiPhoneのFace IDの代わりに使用することはできません。
ペアリングされているiPhoneのApple Vision Proからのロック解除(有効な場合)を正常に行うには、以下の条件をすべて満たす必要があります:
起動したあと、iPhoneのロックが別の方法で1回以上解除されている必要があります。
Apple Vision Proのロックが解除され、使用中である必要があります。
iPhoneがユーザの約1m以内にあることをApple Vision Proが光学的に検知でき、ユーザが対象のiPhoneを見ている必要があります。
iPhoneとApple Vision Proとの間の距離が約1m以内である必要があります。
iPhoneが、Face IDによるデバイスのロック解除の実行が許可された状態である必要があります。(詳しくは、Optic ID、Face ID、Touch ID、パスコード、パスワードを参照してください。)
iPhoneによるApple Watchのロック解除
利便性を高めるため、Apple Watchの最初の起動の直後から、ユーザがApple Watch自体でパスコードを入力しなくてもiPhoneでロックを解除できます。そのために、ランダムなロック解除シークレット(この機能を有効にしたあとの初回のロック解除シーケンスで生成されます)を使用して長期エスクローレコードが作成され、Apple Watchのキーバッグに保存されます。このエスクローレコードのシークレットがiPhoneのキーチェーンに保存され、Apple Watchが再起動されるたびに、その後の新しいセッションをブートストラップするために使用されます。
iPhoneミラーリングのセキュリティ
iPhoneミラーリングを使用すると、ユーザが近くのMacからiPhoneを使用できます。Macからリモートで使用されている際、iPhoneはロックされたままになり、ユーザのロック画面には永続的な通知が表示されます。セッション終了後、初めてiPhoneのロックが解除されるとバナーが表示されます。
通知の転送
iPhoneミラーリングにより、ユーザはiPhoneから同じApple Accountを使用するMacに通知を転送できます。同じApple Accountを使ってデバイスにサインインしたユーザは、ローカルのピアツーピアプロトコルを使用して暗号の識別情報を交換します。この情報は、エンドツーエンド暗号化を使用してiCloudに保存されている鍵で暗号化されます。ユーザがiPhoneミラーリングを有効にしてiPhoneでパスコードを入力すると、Macの現在の暗号識別情報が記録されます。この識別情報の秘密鍵は、Secure Enclave内で保護されます。この識別情報は固定されているため、変更されると通知がMacに転送されなくなります。通知はエンドツーエンド暗号化を使用して転送時に暗号化されます。
リモートロック解除
iPhoneミラーリングのリモートロック解除は、Apple WatchによるiPhoneのロック解除と同じリモートロック解除プロトコルを使用しますが、開始するにはユーザがペアリングされたMac上でiPhoneミラーリングアプリを起動する必要があります。iPhoneミラーリングのために安全な測距は必要ありません。
ユーザがiPhoneミラーリングを初めて設定するときに、「自動的に認証」または「毎回確認」のどちらかを選択するように促されます。MacのSecure Enclaveがこのユーザによる選択を適用し、Macのパスワード(また、対応している場合はTouch ID)を使って認証を行うようにユーザに促します。認証ポリシーの完了後、Macはローカルのワイヤレスピアツーピア接続を使用してiPhoneに接続し、iPhoneキーバッグのロックを解除することで、リモートセッション存続期間中のリモートアクセスを有効にします。