「Qtの基礎 - Bluetooth Low Energy」の版間の差分

ナビゲーションに移動 検索に移動
587行目: 587行目:


== ペアリング管理 (ボンディング) ==
== ペアリング管理 (ボンディング) ==
以下に示すように、セキュリティレベルが定義されている。<br>
==== セキュリティレベル ====
* Just Works
* Just Works
*: 自動的にペアリングを実行する。
*: Man-in-the-Middle攻撃に対して脆弱である。
*: IoTセンサ等、機密性の低いデバイスに適用される。
*: 最も簡単であるが、セキュリティは低い。
*: 最も簡単であるが、セキュリティは低い。
*: <br>
* Passkey Entry
* Passkey Entry
*: PINコードを使用する。
*: PINコードを使用する。
*:* Fixed PIN
*:*: デバイスに事前設定された固定PIN
*:* Dynamic PIN
*:*: 接続時に動的に生成されるPIN
*: キーボード付きデバイスやディスプレイ付きデバイスで使用される。
*: <br>
* Out of Band
* Out of Band
*: NFC等の別の通信手段を使用する。
*: NFC / QRコード等の別チャネルの通信によりでペアリング情報を交換する。
*: 高いセキュリティレベルを実現しているが、追加のハードウェアが必要となる。
*: <br>
* Numeric Comparison
* Numeric Comparison
*: 両デバイスで同じ数字を確認する。
*: 両デバイスで6桁の数字を表示・確認する。
*: そのため、ディスプレイ付きデバイス間で使用される。
*: Bluetooth 4.2以降で利用可能である。
<br>
<br>
Classic Bluetoothとの違いを以下に示す。<br>
==== ボンディング管理の要素 ====
* 接続パラメータの設定が可能
* LTK (Long Term Key)
*: 暗号化に使用する長期キー
*: 不揮発性メモリに保存
*: デバイスペア固有の値
*: <br>
* IRK (Identity Resolving Key)
*: プライバシー保護用の識別子解決キー
*: ランダムアドレスの解決に使用する。
*: デバイスのプライバシー保護に重要である。
*: <br>
* ボンディング情報の管理
*: タイムアウト時の自動削除
*: 手動での削除機能
*: 最大ペアリング数の制限
<br>
==== Classic Bluetoothとの主な違い ====
* 接続パラメータ
*: 接続間隔、レイテンシ、タイムアウト等
*: 接続間隔、レイテンシ、タイムアウト等
* 省電力モードの制御
*: Connection Interval: 7.5ミリ秒~4秒
* 接続状態の監視
*: Slave Latencyが設定可能である。
*: MTUサイズは、BLEは23バイト (デフォルト)
*: <br>
* 省電力モード
*: スリープモード制御
*: 接続パラメータの動的調整
*: バッテリー状態の監視
*: <br>
* セキュリティ面
*: BLEは、SMPプロトコルを使用する。
*: より安全なECDH鍵交換方式採用している。
*: 簡略化されたペアリングプロセス
*: <br>
* 追加のセキュリティ機能
** LEガーディアンタイムアウト
**: 接続維持の時間制限
**: セキュリティリスク軽減
**: 設定可能な時間値
<br><br>
<br><br>


案内メニュー