BLE SMP EDIV和DIV是怎么生成的?生成的具体过程?EDIV是由DIV生成的吗?
时间: 2024-04-28 18:20:51 浏览: 222
BLE SMP中的EDIV和DIV是通过随机数生成的。具体过程如下:
1. 首先,SMP协议中的两个设备分别生成一个随机数,称为R1和R2。
2. 接下来,SMP协议中的两个设备将这两个随机数组合在一起,生成一个16位的DIV值。DIV值是通过将R1和R2拼接在一起,然后将结果进行模65536的运算得到的。
3. 然后,SMP协议中的两个设备将生成的DIV值分别进行异或运算,生成一个8位的EDIV值。EDIV值是通过将SMP中的两个设备各自生成的DIV值进行异或运算得到的。
因此,EDIV是由DIV生成的,但是它们之间的生成过程不同。DIV是通过将两个随机数拼接在一起进行模运算得到的,而EDIV是通过将两个设备各自生成的DIV进行异或运算得到的。
相关问题
BLE SMP EDIV和DIV是怎么生成的?生成的具体过程?他们之间有什么关系?
BLE SMP中的EDIV和DIV是通过配对时使用的随机数和密钥生成的。具体生成过程如下:
1. 首先,配对过程中的主设备和从设备各自生成一个随机数rand数,并将其发送给对方设备。
2. 然后,主设备和从设备利用自身的私钥和对方设备发送的随机数rand,通过加密算法生成一个共享的密钥。
3. 在生成共享密钥的过程中,主设备和从设备还需要生成一个EDIV和一个RAND,其中EDIV是一个16位的值,RAND是一个64位的值。
4. EDIV的生成方式是将主设备和从设备的rand数相加,然后取结果的低16位作为EDIV的值。
5. DIV的生成方式是将主设备和从设备的RAND数相加,然后取结果的低16位作为DIV的值。
EDIV和DIV之间的关系是,EDIV和DIV都是配对时生成的随机数,其中EDIV是一个16位的值,DIV是一个32位的值,它们都用于加密和解密数据时的密钥生成和验证。在加密和解密数据时,主设备和从设备需要使用共享密钥、EDIV和DIV进行密钥生成和验证,以确保数据的安全性。
BLE SMP EDIV和DIV的区别
在 BLE(Bluetooth Low Energy)中,SMP(Security Manager Protocol)是用于设备之间进行安全连接的协议。在 SMP 连接过程中,设备之间会交换一些安全参数,其中包括 EDIV 和 DIV。
EDIV(Encryption Diversifier)是一个随机数,用于生成对称加密密钥。它是由主从设备协商生成的,并且在连接过程中都会使用相同的值。EDIV 的长度为 2 字节,取值范围为 0-65535。
DIV(Connection Signature Resolving Key Diversifier)也是一个随机数,用于生成连接签名。它是由主设备生成的,且每个连接都有一个唯一的 DIV 值。DIV 的长度为 2 字节,取值范围为 0-65535。
因此,EDIV 和 DIV 的区别在于它们的生成方式和用途。EDIV 用于生成对称加密密钥,而 DIV 用于生成连接签名。同时,EDIV 是主从设备协商生成的,而 DIV 是主设备生成的。
阅读全文