蓝牙|BLE Host解析:BLE SM(2):密钥生成方法(Key Generation Methods)
本文引自: https://blog.bluetooth.com/bluetooth-pairing-part-2-key-generation-methods
【蓝牙|BLE Host解析:BLE SM(2):密钥生成方法(Key Generation Methods)】在 “Bluetooth Pairing Part 1: Pairing Feature Exchange,”谈到了低功耗(Low Energy,简称LE)的蓝牙配对特
性交换。配对特性交换让连接的发起设备和响应设备双方都能够获悉彼此的配对特性。
可启用的配对特性有:
- OOB 数据标志位
- MITM—Man-In-The-Middle 标志位
- SC—LE secure connection 标志位
- IO Cap—IO Capabilities
下方列表中是低功耗传统配对(Legacy Pairing) 和低功耗安全连接 (LE Secure Connection) 的密钥生成方法:
·直接连接(Just Works)
·万能钥匙(Passkey Entry)
·带外数据(Out-of-Band,简称OOB)
低功耗安全连接,除了以上三种方法以外,还增添了一种新方法:
·数值比较(Numeric Comparison)
1. 密钥生成的操作流程:
第1步:查看配对特性交换框架中的安全连接位(SC)。如果双方的安全连接位都等于1,则采用低功耗安全连接,并进入第2步。
否则采用低功耗传统配对,并进入第3步。
第2步:当选用低功耗安全连接时,发起设备和响应设备应遵循如下矩阵选择配对方法:
·“Use OOB”意为选择Out-of-Band
·“Check MITM”意为忽略“OOB”,查看MITM标识
·“Use IO”,则进入第4步,根据双方设备的IO功能选择密钥生成方法
第3步:当选用低功耗传统配对(Legacy Pairing)时,发起设备和响应设备应遵循如下矩阵选择配对方法:
·“使用OOB”意为选择Out-of-Band
·“查看MITM”意为忽略“OOB”,查看MITM标识
·“使用IO功能”,进入第4步,根据双方设备的IO功能选择密钥生成方法
第4步:以下是IO功能和密钥生成方法的映射。根据下面这张图表,发起设备和响应设备双方就能根据他们的配对特性找到适合的连接方法。
随后,发起设备和响应设备就能获悉密钥生成阶段将要应用的方法了。后续的第三篇文章将继续介绍如何通过使用密钥输入(Passkey Entry),在低功耗传统配对中生成匹配密钥。
推荐阅读
- 基于|基于 antd 风格的 element-table + pagination 的二次封装
- 杭电oj——2030汉字统计
- tableView|tableView 头视图下拉放大 重写
- Android|Android BLE蓝牙连接异常处理
- 前端代码|前端代码 返回顶部 backToTop
- 【译】Rails|【译】Rails 5.0正式发布(Action Cable,API模式等)
- #12-UITableView|#12-UITableView 优化方案
- KubeDL HostNetwork(加速分布式训练通信效率)
- iOS自适应高度的TableViewCell
- HashMap&ConcurrentHashMap&HashTable