配对和绑定
为了保证低功耗蓝牙的绝大多数安全特征,必须完成两件事情:首先,必须互相配对;其次,连接一旦加密,设备必须分配用于加密、保障隐私并对消息进行验证的密钥。只要密钥被保存下来,设备就处于绑定状态了。
因此,要想了解安全是如何工作的,关键在于理解配对和密钥分配系统的工作原理。同样,明确两个设备间的初始化连接不同与二者之间的后续连接也很重要。
1.连接:通讯的基础,通讯数据为明文;
2.配对:配对仅仅是为了在连接的基础上加密(通讯数据经过加密为密文),提高蓝牙链路传输的安全性。不配对也能连接进行通信。
3.绑定:绑定是配对发起时的一个可选配置。把配对信息记录下来, 下次不用配对自动进入加密的连接;所以没在bonding列表里的设备不影响连接,照连不误。
起初未提供安全性的两个设备如果希望做一些需要安全性的工作,就必须先配对。
配对涉及两个设备的身份认证,链路加密以及随后的密钥分配,身份解析密钥等。如果配对时设置了绑定位,分配的秘钥用户可以存储在flash中这样两个设备再第二次重连时的安全启动会更快。而不需要像第一次一样需要再启动整个配对过程。
第一阶段:配对信息交换(主要就是两边设备的i/o能力,设置绑定标志,链路是否需要MITM保护,如果设置绑定分配哪些密钥等信息。)
第二阶段:链路认证(以前的静态密码,动态密码,这个输入密码的过程就是认证的一种方式。)
· 第三阶段:密钥分配
配对信息交换:
配对的第一阶段涉及配对信息的交换,该信息用于确定设备的配对方式,以及确定在最后的阶段将会分配哪些密钥。
两台设备间配对信息的交换是通过配对请求(PairingRequest)和配对响应(PairingResponse)数据包实现的。这两种信息的内容请参考表1:配对请求/响应。
*位顺序从LSB到MSB。
·