a) 上方第一行描述了三种配对过程,分别为Bluetooth In Band, OOB Discovery only, OOB Discovery and Authentication。这里OOB是指Out
of Band,即非蓝牙的传输方式,如NFC。
b) 左边第一列从Device Discovery到Authentication是配对的四个步骤,分别是搜索设备、建立物理连接、各自产生数据加密所需的Link
key、鉴权(即确认双方Link key正确)。
c)
Bluetooth In Band是手机最常用的蓝牙配对方式
i. 通过Inquiry (蓝牙术语,规范中有详细定义如何通过Inquiry操作来找到周围设备)来搜索周围设备,
ii. 再通过Page(和Inquiry一样,也是专有术语)建立蓝牙物理连接(ACL Link)
iii. 产生Link key的过程比较深入,这里暂不深入讨论,有兴趣可研究BLUETOOTH SPECIFICATION Version 4.0 – Volume 3 – Part H - Security Manager Specification
iv. 双方各自产生Link key后,可通过三种方式进行鉴权:Numeric Compare (6位随机密码比较)、Passkey
Entry (一方显示数据,另一方输入密码)、Just Works (不鉴权,直接使用)。
d)
OOB Discovery only & OOB Discovery and Authentication 这两种方式是使用非蓝牙的传输方式来完成Bluetooth In Band的部分步骤,如通过NFC来交换双方蓝牙地址和Link
key,以达到“不用配对”的用户体验。
2、
Mediatek Android的配对代码流程
下述代码流程基于ALPS.JB2.MP完成,其他版本大同小异,也可以参考。