Android BluetoothDevice -> connectGatt() 安全
Posted
技术标签:
【中文标题】Android BluetoothDevice -> connectGatt() 安全【英文标题】:Android BluetoothDevice -> connectGatt() Security 【发布时间】:2015-01-31 21:11:55 【问题描述】:在使用this 方法连接到蓝牙 LE 设备后交换数据时是否有任何内置安全性?在这里,我想澄清以下内容-
1.设备连接后通信通道是否安全(但尚未配对/绑定)?
或者
2。是否必须绑定/配对 BLE 设备(使用 createBond())以确保通信安全?
我查看了以下线程,问题 4 似乎与我的问题相似。
Bluetooth Low Energy encryption and data safety
但答案因回应而异。如果有人对此有明确的了解,请回复。
问候,
保罗
【问题讨论】:
【参考方案1】:-
不,配对过程与 LE 中的连接过程是分开的。您无需配对即可连接并交换数据。
当您说安全时,您的意思是加密吗? LE 安全性有不同的功能。您可以在不配对的情况下签名并添加完整性。
无论使用安全简单配对还是 LE 安全连接,数据加密都需要配对。
【讨论】:
感谢您的回复。 “安全”是指加密或其他阻止 MITM 跟踪正在交换的数据的机制。另外,当您说签署数据时(您的回复中的第 2 点),这是否意味着实现我自己的加密逻辑?你能多说一点吗? 首先,加密不一定能保护您免受 MITM 攻击。关联模型可以。登录 LE 不使用 OOB,它使用 CSRK 对您的数据 PDU 进行签名。以上是关于Android BluetoothDevice -> connectGatt() 安全的主要内容,如果未能解决你的问题,请参考以下文章