This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2652R7:正确安全访问特征

Guru**** 2347070 points
Other Parts Discussed in Thread: SYSCONFIG
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1434095/cc2652r7-correct-secure-access-to-characteristics

器件型号:CC2652R7
主题中讨论的其他器件:SysConfig

工具与软件:

你好
我将根据多角色示例开发一个应用。 我需要配置传入连接、以便每次都需要密码。 为此、我设置 GAPBOND_PAIRING_MODE_INITIALIZE 参数。 一切似乎都很好,但有一个备注。
我正在使用 iOS 上的 NRF 连接应用程序检查工作情况。 连接时、我真的需要输入密码、但在后台我看到应用程序已经收到有关特征的信息。 我还在 Android 上有自己的应用程序、可以连接到我的设备、但出于某种原因、它可以在不输入密码的情况下读取/写入特征。

问题是、如何正确配置器件、以便在输入正确的密码之前不允许读取/写入特征?

可能我配置不正确?

或者、防止在没有密码的情况下进行写入的唯一方法是使用 GATT_LIBLE_AUTHEN_WRITE/ GATT_LIBLE_AUTHEN_READ 参数配置特性?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nick。

    感谢您的咨询。

    您能否说明一下 GATT 表的使用情况以及 GATT 表的配置情况? 此外、SysConfig 中的绑定管理器设置是什么?

    BR、

    David。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我没有机会拍摄 SysConfig 的照片、但我附加了我在程序中使用的内容、看起来这就是我需要的内容。
    此外、我还介绍了如何配置该服务。 是否需要在 simpleProfileChar5Props 中更改某些内容尚不清楚?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nick。

    您是否在第一个连接之前配对/接合、或者它是否是第一个连接和第一个配对/接合? 您能否请尝试改用 GATT_permit_encrypt_read 和 GATT_permit_encrypt_write? 我只是想看看这是否对你有用(它应该要求你配对和结合,当你试图阅读特征)。

    BR、

    David。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好
    我假设这不是第一次配对。 正如我看到的、绑定已禁用。 因此、每次建立新连接时、都会要求我输入密码。
    "你说什么? 我在一个旧的 Android 手机(版本7.1.2 )的 nRFconnect 应用程序中测试了它。 当使用 GATT_LABLE_AUTHEN_WRITE/ GATT_LABLE_AUTHEN_READ 时、结果类似于。 也就是说、系统要求我输入密码、之后才能看到/读取这些特征。
    我并不真正理解这些设置的不同、因为它们的行为是相同的。

    PS

    问题未完全解决、因为我意外按下了错误的按钮

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nick。

    很抱歉我不理解。 您提到在使用 AUTH ONE 时结果是相似的、但是这次为什么不输入密码就无法读取 char 呢?

    也就是说、系统要求我输入密码、然后才能查看/阅读这些特征。

    BR、

    David。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    1.当我使用 GATT_permit_read/GATT_permit_write 时、无论我是否已经输入了密码(在另一方请求后)、在我看来我都可以读写用户服务中的特征。
    2.如果我在特征中设置了 GATT_PERIOD_AUTHEN_WRITE/ GATT_PERIOD_AUTHEN_READ、则在输入正确的密码之前、我无法访问里面的服务和特征。
    3.如果我按您所说的设置 GATT_LIBLE_AUTHEN_READ 和 GATT_LABLE_AUTHEN_WRITE、那么我的行为与第2种情况类似。 器件的行为是否应该有所不同?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Nick。

    对不起,我想我在这里误解了你的问题。 因此、是的、使用属性 GATT_permit_AUTHEN_WRITE / GATT_permit_AUTHEN_READ、甚至是 GATT_permit_encrypt_read 和 GATT_permit_encrypt_write 来保护特性免受不需要的用户的影响。 在后面一个教程中、数据在共享时是加密的。

    BR、

    David。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的。 感谢您的帮助!