蓝牙 BLE 标准中是否有认证? (逆向工程麻烦)
Is there an authentication in the Bluetooth BLE standard? (reverse engineering trouble)
简而言之
当我使用非官方 app/program 连接到 BLE 设备时,设备不执行 GATT 命令。
该应用程序是否需要 运行 某种设备身份验证之王? (一个灯泡)
我的逆向工程故事
我正在尝试对蓝牙 LE 灯泡(洒红节睡眠伴侣)进行逆向工程。我已成功找到我需要的 GATT 消息:
- 通过阅读来自 Android(开发工具)的 HCI 期刊
- 通过反汇编 Android 应用程序 (Sleep360) 的 Java 代码
但是,向灯泡发送完全相同的蓝牙消息序列是行不通的。
在测试时,我实际上发现如果以正确的顺序快速 运行 以下内容适用于一个 GATT 命令:
- 我连接官方Android app
- 我关闭官方Android应用程序
- 我连接自己的 app/program 并发送一个 GATT 命令(来自同一设备或另一设备)
我的测试
我运行 我用两种方法进行测试:
- 使用 nF Connect Android 应用程序
- 使用我自己的 python 脚本 运行在装有 bluez 的 Linux 笔记本电脑上
谢谢你的帮助!
没有这样的"authentication standard"。然而,您在标准中有配对和绑定,但这通常由系统而不是 Android 中的应用程序处理。
制造商可以自由使用 GATT 作为传输层,然后在其之上构建身份验证协议。
简而言之
当我使用非官方 app/program 连接到 BLE 设备时,设备不执行 GATT 命令。
该应用程序是否需要 运行 某种设备身份验证之王? (一个灯泡)
我的逆向工程故事
我正在尝试对蓝牙 LE 灯泡(洒红节睡眠伴侣)进行逆向工程。我已成功找到我需要的 GATT 消息:
- 通过阅读来自 Android(开发工具)的 HCI 期刊
- 通过反汇编 Android 应用程序 (Sleep360) 的 Java 代码
但是,向灯泡发送完全相同的蓝牙消息序列是行不通的。
在测试时,我实际上发现如果以正确的顺序快速 运行 以下内容适用于一个 GATT 命令:
- 我连接官方Android app
- 我关闭官方Android应用程序
- 我连接自己的 app/program 并发送一个 GATT 命令(来自同一设备或另一设备)
我的测试
我运行 我用两种方法进行测试:
- 使用 nF Connect Android 应用程序
- 使用我自己的 python 脚本 运行在装有 bluez 的 Linux 笔记本电脑上
谢谢你的帮助!
没有这样的"authentication standard"。然而,您在标准中有配对和绑定,但这通常由系统而不是 Android 中的应用程序处理。
制造商可以自由使用 GATT 作为传输层,然后在其之上构建身份验证协议。