是否可以使用 BlueZ 堆栈修复密码?
Is it possible to used fix pincode with BlueZ stack?
我正在开发基于蓝牙 linux 堆栈 blueZ 5.52 的蓝牙应用程序。
我正在使用 Dbus 接口。
该模块是 运行 BLE 4.2.
我的设备是外围设备,中央设备是智能手机(Android 和 IOS)。
我成功地通过密码实现了安全性。
我的问题是每次连接都会生成密码,我找不到使用静态密码的方法。
我在蓝牙规范 4.0 中看到我们可以设置 PIN 已固定(7.3.6 写入 PIN 类型命令)但是没有办法给出我们想要使用的 PIN 码...
如何为我的应用程序使用固定密码?可能吗 ?
感谢您的帮助,
由于您提到了 运行 BLE 而不是经典蓝牙,因此 "Write PIN type command" 不相关(它用于经典蓝牙)。
使用 BLE 中的安全协议,不再可能使用固定密钥。每次尝试都必须生成一个新的随机密钥。安全协议的设计方式是,如果重用密钥,安全性 属性 就会被破坏。特别是,它平均需要 10 次尝试才能破解密钥,因为每次尝试都至少可以多了解一位密钥。
查看我在 https://devzone.nordicsemi.com/f/nordic-q-a/35856/questions-about-lesc-mitm-and-passkey 的回答了解更多详情。
我正在开发基于蓝牙 linux 堆栈 blueZ 5.52 的蓝牙应用程序。 我正在使用 Dbus 接口。 该模块是 运行 BLE 4.2.
我的设备是外围设备,中央设备是智能手机(Android 和 IOS)。 我成功地通过密码实现了安全性。
我的问题是每次连接都会生成密码,我找不到使用静态密码的方法。
我在蓝牙规范 4.0 中看到我们可以设置 PIN 已固定(7.3.6 写入 PIN 类型命令)但是没有办法给出我们想要使用的 PIN 码...
如何为我的应用程序使用固定密码?可能吗 ?
感谢您的帮助,
由于您提到了 运行 BLE 而不是经典蓝牙,因此 "Write PIN type command" 不相关(它用于经典蓝牙)。
使用 BLE 中的安全协议,不再可能使用固定密钥。每次尝试都必须生成一个新的随机密钥。安全协议的设计方式是,如果重用密钥,安全性 属性 就会被破坏。特别是,它平均需要 10 次尝试才能破解密钥,因为每次尝试都至少可以多了解一位密钥。
查看我在 https://devzone.nordicsemi.com/f/nordic-q-a/35856/questions-about-lesc-mitm-and-passkey 的回答了解更多详情。