Bluetooth 蓝牙BLE标准中是否有身份验证?(逆向工程故障) 简言之

Bluetooth 蓝牙BLE标准中是否有身份验证?(逆向工程故障) 简言之,bluetooth,bluetooth-lowenergy,reverse-engineering,gatt,bluetooth-gatt,Bluetooth,Bluetooth Lowenergy,Reverse Engineering,Gatt,Bluetooth Gatt,当我使用非官方应用程序/程序连接到BLE设备时,设备不会执行GATT命令 应用程序是否需要对设备运行某种身份验证?(一个灯泡) 我的逆向工程故事 我正在尝试对蓝牙LE灯泡(Holi Sleep Companion)进行反向工程。我已成功找到我需要的关贸总协定信息: 通过阅读Android上的HCI日志(开发工具) 通过反汇编Android应用程序(Sleep360)的Java代码 但是,向灯泡发送完全相同的蓝牙消息序列不起作用 在测试过程中,我实际发现,如果以正确的顺序快速运行,以下命令适用于一

当我使用非官方应用程序/程序连接到BLE设备时,设备不会执行GATT命令

应用程序是否需要对设备运行某种身份验证?(一个灯泡)

我的逆向工程故事 我正在尝试对蓝牙LE灯泡(Holi Sleep Companion)进行反向工程。我已成功找到我需要的关贸总协定信息:

  • 通过阅读Android上的HCI日志(开发工具)
  • 通过反汇编Android应用程序(Sleep360)的Java代码
  • 但是,向灯泡发送完全相同的蓝牙消息序列不起作用

    在测试过程中,我实际发现,如果以正确的顺序快速运行,以下命令适用于一个GATT命令:

  • 我连接官方Android应用程序
  • 我关闭官方Android应用程序
  • 我连接自己的应用程序/程序并发送一个GATT命令(来自同一设备或其他设备)
  • 我的测试 我使用两种方法运行测试:

  • 使用nF Connect Android应用程序
  • 使用我自己的python脚本,在带有bluez的Linux笔记本电脑上运行
  • 谢谢你的帮助

    没有,没有这样的“认证标准”。不过,标准中有配对和绑定功能,但这通常由系统负责,而不是由Android中的应用程序负责


    制造商可以免费使用GATT作为传输层,然后在其上构建身份验证协议。

    感谢您的输入,非常有用!然而,在我的例子中,我没有发现任何看起来像GATT认证消息的东西。此外,还有一个示例,例如一个打开/关闭GATT消息,它不发送任何看起来像身份验证ID的内容,那么这将如何工作呢?还有什么别的东西会使我对灯泡的要求出错吗?非常感谢。如果您启动制造商应用程序并打开灯,hci日志是否每次都显示相同的消息?当您在应用程序中执行相同的操作时,您是否看到hci消息中存在任何差异?也许你可以分享hci日志?哦,谢谢。通过询问hci日志,我试图创建一个干净的日志文件,但发现我没有正确理解GATT命令!所以我确实让我的灯泡工作了。我还有一些工作要做,以改变颜色,但它的工作:-)非常感谢。完成后,我将发布代码。干杯如果有人感兴趣,代码如下: