Bluetoothのセキュリティ
Appleデバイスでは、Bluetooth ClassicとBluetooth Low Energy(BLE)の2種類のBluetoothが使用されます。両バージョンのBluetoothセキュリティモデルは、以下の固有のセキュリティ機能を備えています。
ペアリング: 1つ以上の共有秘密鍵を作成するプロセス
ボンディング: 信頼できるデバイスペアを構築するために、ペアリング時に作成された鍵を後続の接続用に保存すること
認証: 2台のデバイスが同じ鍵を持っていることの確認
暗号化: メッセージの機密保持
メッセージの整合性: メッセージの偽造からの保護
セキュアシンプルペアリング: 受動的盗聴からの保護と中間者攻撃からの保護
Bluetoothバージョン4.1ではBluetooth Classic(BR/EDR)物理トランスポートにセキュア接続機能が追加されました。
各種Bluetoothのセキュリティ機能は以下の通りです。
サポート | Bluetooth Classic | Bluetooth Low Energy |
---|---|---|
ペアリング | P-256楕円曲線 | FIPS認定アルゴリズム(AES-CMACおよびP-256楕円曲線) |
ボンディング | ペアリングの情報をiOS、iPadOS、macOS、tvOS、およびwatchOSデバイス上の安全な場所に保存 | ペアリングの情報をiOS、iPadOS、macOS、tvOS、およびwatchOSデバイス上の安全な場所に保存 |
認証 | FIPS認定アルゴリズム(HMAC-SHA256およびAES-CTR) | FIPS認定アルゴリズム |
暗号化 | コントローラによって実行されるAES-CCM暗号化 | コントローラによって実行されるAES-CCM暗号化 |
メッセージの整合性 | メッセージの整合性確保のために使用されるAES-CCM | メッセージの整合性確保のために使用されるAES-CCM |
セキュアシンプルペアリング: 受動的盗聴からの保護 | 楕円曲線Diffie-Hellman鍵共有(ECDHE) | |
セキュアシンプルペアリング: 中間者(MITM)攻撃からの保護 | ユーザが支援する2つの数値法: 数値比較およびパスキー入力 | ユーザが支援する2つの数値法: 数値比較およびパスキー入力 MITM以外のすべてのペアリングモードを含め、ペアリングにユーザの応答が必要 |
Bluetooth 4.1以降 | iMac Late 2015以降 MacBook Pro Early 2015以降 | iOS 9以降 iPadOS 13.1以降 macOS 10.12以降 tvOS 9以降 watchOS 2.0以降 |
Bluetooth 4.2以降 | iPhone 6以降 | iOS 9以降 iPadOS 13.1以降 macOS 10.12以降 tvOS 9以降 watchOS 2.0以降 |
Bluetooth Low Energyのプライバシー
ユーザのプライバシーを保護するため、BLEはアドレスのランダム化とトランスポート間での鍵導出という2つの機能を備えています。
アドレスのランダム化は、Bluetoothデバイスのアドレスを頻繁に変更することで一定期間内にBLEデバイスが追跡される可能性を低減する機能です。このプライバシー機能を使用しているデバイスが既知のデバイスに再接続するには、プライベートアドレスと呼ばれるデバイスのアドレスを他方のデバイスで解決できるようにする必要があります。プライベートアドレスは、ペアリング手順で交換されるデバイスのID解決鍵を使って生成されます。
iOS 13以降およびiPadOS 13.1以降には、トランスポート間でリンク鍵を導出する機能があります。これは、トランスポート間の鍵導出と呼ばれる機能です。例えば、BLEで生成されたリンク鍵を使ってBluetooth Classicのリンク鍵を導出することができます。また、AppleはBluetoothコア仕様4.1で導入されたセキュア接続機能(Bluetoothコア仕様5.1を参照)に対応するデバイスについて、BLEをサポートするためにBluetooth Classicを追加しました。