Bluetooth とは何か?第3回 [全3回]
Bluetooth Classicのセキュリティとペアリングについて
第二回では、Bluetooth Classic と Bluetooth Low Energy(BLE)の違いについてご紹介しました。
第三回は、Bluetooth Classic のセキュリティとペアリングについてご紹介します。
Bluetooth Classicのセキュリティ
Bluetooth Classic のセキュリティは4つのモードがあります。各モードでセキュリティのレベルが異なります。各モードのセキュリティレベルについて説明します。
Bluetooth Classicのセキュリティモード1:Non-Secure Mode
セキュリティ無しのモードで、認証、暗号化も行いません。
Bluetooth Classicのセキュリティモード2:Service level enforced security Mode
接続時は認証、暗号化を行わないが、データ通信時に必要に応じて認証、暗号化を行ないます。
Bluetooth Classicのセキュリティモード3:Link level enforced security Mode
ペアリングを必須とする時のモードで、接続時に認証、暗号化を行ないます。
Bluetooth Classicのセキュリティモード4:Service level enforced security Mode
プロトコルに応じて認証、暗号化を行ないます。例えばサービス検索で使用するService Discovery Protocol(SDP)の接続時は認証、暗号化を行わないが、Serial Port Profile (SPP)でデータ通信するためのRFCOMM Protocolの接続時は認証、暗号化を行なう等、プロトコルごとに認証、暗号化の有無を設定できるモードです。
このセキュリティモード 4では更に、5 段階のセキュリティレベルが定義されています。
- セキュリティレベル 0:セキュリティ無し、ユーザー操作なし
- セキュリティレベル 1:セキュリティ無し、ユーザー操作あり
- セキュリティレベル 2:暗号あり、認証なし
- セキュリティレベル 3:暗号あり、認証あり
- セキュリティレベル 4:高強度暗号あり、認証あり
よく活用されているBluetoothのセキュリティモード
仕様上は上記の4つのセキュリティモードが定義されていますが、現実には、ほぼ全ての Bluetooth製品でセキュリティモード 4 が実装されています。Bluetooth 2.1 以降の製品ではセキュリティモード 4 の実装が義務付けられていて、他のモードは Bluetooth 2.0 以前の製品との互換性のためだけに残されています。
Bluetooth Classic のペアリング
Bluetooth のペアリングは、接続する機器同士を認証させることです。近くにBluetooth対応の機器が複数あることがあるので、どの機器と接続するのかを決めておく必要があります。
Bluetooth Classic のペアリングは、Link Management Protocol(LMP) レイヤに実装されます。
Bluetooth Classic のペアリングには、Bluetooth 2.0 以前のPIN モード と、2.1 以降の SSP (Simple Secure Pairing)モード があります。上記の セキュリティモード 2 と セキュリティモード3 が PIN モードに、セキュリティモード 4 が SSPモード に対応します。
PIN モードは数字 最大 16 桁の暗証コードを入力することで認証するモードです。暗号化は簡易なハッシュ交換によって行われますが、多くの Bluetooth製品で"0000"や"1234"などの4桁の固定のコードとして実装されています。そのため、PIN モードは安全性に欠けていると考えられていて、PINモードの仕様は互換性のためだけに残されています。
SSP モードは、Elliptic Curve Diffie-Hellman(ECDH:楕円曲線ディフィー・ヘルマン)アルゴリズムの公開鍵交換方式を使い、盗聴に対する安全性が向上しています。また、Man-In-The-Middle(MITM:中間者)攻撃を防御できるように複数の認証方式がサポートされています。
Just works
認証なし。ヘッドフォンやマウスなど入力も表示もできない機器で使用します。
Passkey entry
機器に表示された「パスキー」を他の機器で入力して認証する認証方式です。キーボードなど入力機能のみを持つ機器で使用します。
Numeric comparison
各々の機器に表示された「認証コード」を比較して一致確認する認証方式です。スマートフォンやカーナビなど表示機能を持つ機器で使用します。
Out Of Band(OOB)
USBやNFC など Bluetooth 以外の通信手段で認証する認証方式です。現実に実装している製品は限られていて、NFC搭載BluetoothスピーカとNFC搭載スマートフォンで、スマートフォンからNFCでBluetoothスピーカのデータ読み込み、読み込んだデータで認証するようなシーンで利用されています。
以上、Bluetooth Classic のセキュリティとペアリングについてご説明しました。もう一度、Bluetooth について勉強・復習したい方は下記のリンクから再度ご確認ください。
Bluetooth とは何か? Bluetoothの歴史と特徴
Bluetooth とは何か? Bluetooth ClassicとBluetooth Low Energyの違い
Bluetoothを使った製品開発には、Bluetooth認証(SIG認証)が必要です。SIG認証の必要性と認証の工数(時間や費用)を削減する方法を下記のページでご紹介しています。
関連情報・サービス
-
Bluetooth認証や開発を支援「Bluetooth® ソリューション」
Bluetoothの提案から機能開発、Bluetooth認証、製品化までご支援。Bluetooth SDK「NetNucleus Bluetooth」を使用することで、Bluetooth開発が簡単にで...