蓝牙用于加密数据的协议是什么?
what are the protocols that bluetooth use to encrypt the data?
我一直在寻找蓝牙(EDR 和 LE)用于加密数据的协议。我看过官方文档,但我不清楚它是 Diffie Hellman 还是 E0。
PD:如果我没记错的话,在不同的情况下协议实现一个或另一个,我需要当两个设备共享 6 位简单密码时,例如,当我们将智能手机与耳机配对时或演讲者。
错位的问题
首先,这个问题不适合在SO上问,因为它根本不涉及任何编码问题,而是参考规范。不过,我会给你一个答案。
不要将加密误认为是密钥交换/生成
Diffie–Hellman key exchange
(或 Elliptic-Curve Diffie–Hellman (ECDH)
,如果在椭圆曲线上操作)是 - 正如其名称所述 - 用于交换/生成加密密钥的协议 material。它与实际数据加密无关,也与实际数据完整性无关。
另一方面,E0
是一种用于实际加密数据的加密算法 - 但也不用于加密数据的身份验证(完整性)。
BR/EDR
关于 BR/EDR 密钥交换、身份验证和加密,您可以在 Table 1.1:安全算法 中找到很好的概述 [BR/EDR 控制器] 安全规范(蓝牙核心规范版本 5.2 [第 2 卷] H 部分 [第 1 节]).
总结一下,安全机制 Legacy
和 Secure Simple Pairing
都使用 E0
进行加密,而 Secure Connections
使用 AES-CCM
.
请注意,Secure Simple Pairing
和 Secure Connections
都使用 ECDH
生成密钥,而 Legacy
使用 SAFER+
.
乐
LE Link 层上的加密使用 AES-CCM
执行,如 [低能量控制器] 低能量 Link 层安全性(蓝牙核心规范)中所述版本 5.2 [第 6 卷] E 部分).
Link层上的实际加密需要一些密钥,这些密钥是在配对过程中使用[Host]安全管理器规范(蓝牙核心规范版本)中描述的方法导出/计算的5.2 [第 3 卷] H).
总结一下,有LE legacy pairing
(短期密钥(STK)生成)和LE Secure Connections
(长期密钥(LTK)生成)。
请注意,两者都是关于密钥生成/交换的,而 LE legacy pairing
使用(以某种方式) AES
而 LE Secure Connections
使用 ECDH
.
我一直在寻找蓝牙(EDR 和 LE)用于加密数据的协议。我看过官方文档,但我不清楚它是 Diffie Hellman 还是 E0。
PD:如果我没记错的话,在不同的情况下协议实现一个或另一个,我需要当两个设备共享 6 位简单密码时,例如,当我们将智能手机与耳机配对时或演讲者。
错位的问题
首先,这个问题不适合在SO上问,因为它根本不涉及任何编码问题,而是参考规范。不过,我会给你一个答案。
不要将加密误认为是密钥交换/生成
Diffie–Hellman key exchange
(或 Elliptic-Curve Diffie–Hellman (ECDH)
,如果在椭圆曲线上操作)是 - 正如其名称所述 - 用于交换/生成加密密钥的协议 material。它与实际数据加密无关,也与实际数据完整性无关。
E0
是一种用于实际加密数据的加密算法 - 但也不用于加密数据的身份验证(完整性)。
BR/EDR
关于 BR/EDR 密钥交换、身份验证和加密,您可以在 Table 1.1:安全算法 中找到很好的概述 [BR/EDR 控制器] 安全规范(蓝牙核心规范版本 5.2 [第 2 卷] H 部分 [第 1 节]).
总结一下,安全机制 Legacy
和 Secure Simple Pairing
都使用 E0
进行加密,而 Secure Connections
使用 AES-CCM
.
请注意,Secure Simple Pairing
和 Secure Connections
都使用 ECDH
生成密钥,而 Legacy
使用 SAFER+
.
乐
LE Link 层上的加密使用 AES-CCM
执行,如 [低能量控制器] 低能量 Link 层安全性(蓝牙核心规范)中所述版本 5.2 [第 6 卷] E 部分).
Link层上的实际加密需要一些密钥,这些密钥是在配对过程中使用[Host]安全管理器规范(蓝牙核心规范版本)中描述的方法导出/计算的5.2 [第 3 卷] H).
总结一下,有LE legacy pairing
(短期密钥(STK)生成)和LE Secure Connections
(长期密钥(LTK)生成)。
请注意,两者都是关于密钥生成/交换的,而 LE legacy pairing
使用(以某种方式) AES
而 LE Secure Connections
使用 ECDH
.