• 正文
  • 相关推荐
申请入驻 产业图谱

手把手教你:分析如何计算安全连接中的DHKey Check

08/10 08:53
128
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、前言

上一篇介绍了配对共享密钥检查(Pairing DHKey Check)指令,本篇介绍该指令中的DHKey Check这个值是如何产生的。

二、阅读说明

1、泰凌微芯片使用者。2、蓝牙 spec学习者

三、正文

1、共享密钥检查(Pairing DHKey Check)指令在流程图中所处的位置

如上图红色箭头所指,就是共享密钥(Pairing DHKey Check)指令所处的位置,而图中的10a,10b计算出来的值Ea,Eb就是DHKey Check的值。

2、共享密钥检查(Pairing DHKey Check)指令

上图中的DHKey Check的值是通过如下计算方式的来的:Ea = f6(MackKey,Na,Nb,IOcapA,A,B)Eb = f6(MackKey,Na,Nb,IOcapB,B,A)关于该计算的方式和所使用的加密算法,请看下一小节。

3、f6算放解析

如上图所示,用just work进行配对的时候,使用的是红色框中的算法,而f6算法是什么呢,如下图所示使用的是AES-CMAC算法:

下面介绍其中的参数的含义:

    • W:该值为MacKey,在用f5算法计算长期密钥(LTK)的时候得到的。
    • N1:Na,主机的随机数N2:Nb,从机的随机数R:0IOcap:来自第一阶段配对请求和配对响应里面的字段,如下所示

四、结尾

本篇主要介绍了安全连接中的DHKey Check这个值是怎么计算出来的,下一篇将介绍链接层的加密指令了。

相关推荐