ワイヤレスデータの安全度は、それを運ぶリンクに依存します。本記事では、Bluetoothモジュールが転送中のデータをどう保護するか—ペアリング、LE Secure Connections、およびIoTリンクを秘匿する暗号化—を解説します。

なぜリンクを暗号化するか

オープンな2.4 GHz帯で送信するBluetoothモジュールは盗聴の危険にさらされます。暗号化は読めるパケットを暗号文に変え、ペアリング済みデバイスだけが復号できるようにします。

ペアリングとボンディング

ペアリングは一時的な共有秘密を作り、ボンディングは長期鍵を保存してBluetoothモジュールが再ペアリングなしで再接続します。ボンディングが日常の利用をシームレスにします。

レガシーとSecure Connections

古い方式はJust WorksやPIN入力に頼っていました。最新のBluetoothモジュールはLE Secure ConnectionsとECDH(P-256)を使い、受動盗聴や中間者攻撃を防ぎます。

ECDHと共有秘密

LE Secure Connectionsは楕円曲線Diffie-Hellman交換を実行します。Bluetoothモジュールと相手は、公開チャネル上で秘密に同意し、それを漏らさずに済みます。

AES-CCM暗号化

合意した鍵はAES-CCMに渡され、機密性と完全性の両方を提供します。すべてのBluetoothモジュールフレームは認証されるため、改ざんは即座に検出されます。

鍵の種類:LTK、IRK、CSRK

リンク鍵(LTK)は接続を保護し、IRKはプライベートな解決可能アドレスを可能にし、CSRKはデータに署名します。Bluetoothモジュールはボンディング時にこれらを配布します。

プライバシーと解決可能アドレス

追跡を避けるため、BluetoothモジュールはIRKから導出した解決可能なランダムアドレスを使えます。ボンディング済みの相手だけがそれを解決し、公開空間での匿名性を保ちます。

MITM保護

Numeric ComparisonやPasskey入力は中間者耐性を加えます。Secure Connections向けに設定されたBluetoothモジュールは、中継攻撃へのハードルを上げます。

まとめ

セキュリティは接続製品にとって任意ではありません。LE Secure Connections、AES-CCM、プライバシーアドレスにより、Bluetoothモジュールは秘匿性・真正性・耐攻撃性を備えたデータを届けます。