美文网首页
交叉传输密钥派生-CTKD

交叉传输密钥派生-CTKD

作者: wesk痕 | 来源:发表于2022-07-11 21:00 被阅读0次

交叉传输密钥派生-CTKD

image-20220531224225135.png
The Bluetooth standard specifies two incompatible wireless transports: Bluetooth Classic (BT) for high-throughput services and Bluetooth Low Energy (BLE) for very low-power services. BT and BLE have different security architectures and threat models, but they use similar security mechanisms. In particular, pairing enables two devices to establish a long term key to secure the communication. Two devices have to pair over BT and BLE to use both transports securely. Since pairing the same devices two times is considered user-unfriendly, Bluetooth v4.2 introduced Cross-Transport Key Derivation (CTKD).
CTKD allows two devices to pair once, either over BT or BLE, and generate both BT and BLE long term keys. 

来之:https://arxiv.org/abs/2009.11776

翻译:

蓝牙标准指定了两种不兼容的无线传输:用于高吞吐量服务的蓝牙经典 (BT) 和用于极低功耗服务的蓝牙低功耗 (BLE)。BT 和 BLE 具有不同的安全架构和威胁模型,但它们使用相似的安全机制。特别是,配对使两个设备能够建立长期密钥以确保通信安全。两个设备必须通过 BT 和 BLE 配对才能安全地使用这两种传输。由于将同一设备配对两次被认为对用户不友好,因此蓝牙 v4.2 引入了跨传输密钥派生 (CTKD)。

CTKD 允许两个设备通过 BT 或 BLE 配对一次,并生成 BT 和 BLE 长期密钥。

如果你在网上搜CTKD,一定会发现,安全和漏洞围绕着它,因为它在处理双模蓝牙设备时,会使用CTKD生成长期密钥(LTK)或链接密钥(LK),然后覆盖原始的密钥(LTK或LK)。 (这里一定要注意是覆盖)

这个过程需要允许对BR / EDR或LE传输中的至少一个进行配对或绑定,如果密钥强度较弱,则更易于遭受攻击。

关于CTKD的发展演变,蓝牙 4.2 添加了一个功能,定义了一种从蓝牙 BR/EDR 配对信息中导出蓝牙 LE 配对信息的方法,反之亦然。 当设备使用两种类型的传输时,使用此新功能将避免需要单独配对每种传输。 相反,用户只需将两者中的一个配对,这也会自动配对另一个。

iOS 8.2 虽然兼容了蓝牙4.2,有“交叉传输密钥生成/派生”功能,但仅限于苹果自己使用,不能用于 3rd 方开发人员。在iOS13 苹果支持了3rd开发,但有如下要求:

  1. iOS13及以上系统,Android 11及以上系统;

  2. 静态的ble地址必须和bt地址相同,BLE开双模模式;

  3. iOS和Android 这里也有略微差异:

    1. iOS: API打开了支持CTKD模式(connectOption设置:CBConnectPeripheralOptionEnableTransportBridgingKey);

    2. Android:触发连接到 GATT (BluetoothDevice::connectGatt) 的 CTKD (BLE -> BR/EDR),当连接状态变为 STATE_CONNECTED 时触发配对请求 (BluetoothDevice::createBond)。与 BLE 配对,CTKD 生成 BR/EDR 链接 key 。

iOS视频地址:https://developer.apple.com/videos/play/wwdc2019/901/

外设的硬件芯片侧不同,蓝牙协议,对这块也会有略微差异。

当然,CTKD方案,主要还是依赖硬件的实现,BLE5.0之后,暂时没有曝出安全性问题了。 该方案主要优势:从之前的BLE和BT安全配对弹框需要两次到现在的一次,且在iPhone上BT和BLE可以二合一展示。


BT&BLE二合一

特斯拉曝重大安全漏洞,通过 BLE 蓝牙中继攻击无钥匙解锁车辆

https://www.163.com/dy/article/H7OA5GG40552KI0B.html

相关文章

  • 交叉传输密钥派生-CTKD

    交叉传输密钥派生-CTKD 来之:https://arxiv.org/abs/2009.11776[https:/...

  • 13 密钥派生函数

    13.1 概述 密钥派生函数是一个函数它的功能是从一个密钥产生出一个或者多个密钥。 一些密钥派生函数会有一个(通常...

  • https(2)

    一、共享密钥加密(对称密钥加密)客户端和服务端采用同一个密钥加密进行传输,传输的内容加密和解密用同一套密钥在传递该...

  • 加密算法之证书

    公钥传输问题? 我们知道,通过用非对称加密对对称加密的密钥进行加密然后在网络中传输,解决了对称加密密钥的不安全传输...

  • charles的https的抓包原理

    首先浏览器需要通过证书验证服务器的身份,验证通过才会传输‘预主密钥’,‘预主密钥’是用来生成‘主密钥’的,‘主密钥...

  • 算法和数据结构5.6混合加密

    共享密钥加密无法安全传输密钥的的密钥分配问题,公开密钥加密又存在加密解密速度较慢问题。 结合这两种方法以实现互补的...

  • 移位算法实现

    目标: 实现字符串移位加密. 缺点: 密钥传输 const DIC =':abcdefghijklmnopqrst...

  • 常用加密算法介绍及https加密原理

    对称加密 特点:加密、解密采用同一密钥。优点:加密速度快缺点:因用同一密钥加解密,在密文传输过程中需要把密钥也进行...

  • Objective-C的网络请求相关——NSURLSession

    NSURLSession - URL会话(协调一组相关网络数据传输任务) NSURLSession派生自NSOb...

  • 创建数字钱包(零)KDF 密钥派生算法

    KDF 的定义 实现 key stretching [1] 的方法,具体就是从一个 master key,pass...

网友评论

      本文标题:交叉传输密钥派生-CTKD

      本文链接:https://www.haomeiwen.com/subject/agznbrtx.html