工具/软件:Code Composer Studio
您好!
我一直在阅读软件开发指南、似乎可以显示随机生成的密码、以便知道只有能够看到该代码的用户才能访问器件。 我希望将访问权限更限于仅信任的用户。 是否有办法使用 GAP 绑定管理器设置密码系统、以便只有知道密码的人才能访问器件? 还是需要在应用级别完成此操作?
感谢您的帮助、如果您能深入了解如何实施类似的功能、我们将不胜感激。
此致、
Ian
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.
工具/软件:Code Composer Studio
您好!
我一直在阅读软件开发指南、似乎可以显示随机生成的密码、以便知道只有能够看到该代码的用户才能访问器件。 我希望将访问权限更限于仅信任的用户。 是否有办法使用 GAP 绑定管理器设置密码系统、以便只有知道密码的人才能访问器件? 还是需要在应用级别完成此操作?
感谢您的帮助、如果您能深入了解如何实施类似的功能、我们将不胜感激。
此致、
Ian
您好、Rachel、
我一直将项目建立在 Simple Peripheral 示例项目的基础之上、但我不记得有人要求提供与传感器标签配对的密码。 我尝试用6位数字替换密钥、但在与我的手机配对时、仍然没有要求提供密码。 我还尝试禁用绑定、以防我第一次输入密码、它将密钥保存在 SNV 中、但也没有更改任何内容。
您能否告诉我需要更改哪些内容才能启用静态密码? 我的当前设置如下。
//设置 GAP 绑定管理器 { uint32_t 密钥= 123456;//0;//密钥"000000" uint8_t pairMode = GAPBOND_Pairing_mode_wait_for_Req; uint8_t MIPTM = true; uint8_t ioCap = GAPBOND_IO_CAP_DISPLAY_ONLY; uint8_t 绑定= true; GAPBondMgr_SetParameter (GAPBOND_DEFAULT_Passcode、sizeof (uint32_t)、 密钥); GAPBondMgr_SetParameter (GAPBOND_Pairing_mode、sizeof (uint8_t)、&pairMode); GAPBondMgr_SetParameter (GAPBOND_MITM_protection、sizeof (uint8_t)、&MIPTM); GAPBondMgr_SetParameter (GAPBOND_IO_Capabilities、sizeof (uint8_t)、&ioCap); GAPBondMgr_SetParameter (GAPBOND_BUSIONIND_ENABLED、sizeof (uint8_t)、&bonding); }
感谢您的帮助!
谢谢、
Ian
哎呀、
我的特征不需要身份验证。 它现在正在工作。 解决方案是在 simple_gatt_profile.c 中的"配置文件属性-表"下将 GATT_permit_read 或 GATT_permit_permit 写入更改为 GATT_permit_AUTHN_read 或 GATT_permit_AUTHEN_WRITE、以获取要保护的特征值。 例如、
/*********
*配置文件属性-表
*/
static gattAttribute_t simpleProfileAttrTbl[SERVAPP_NUM_ATTR_SUPPORTED]=
{
//简单配置文件服务
{
{ATT_BT_UUUART_SIZE、primServiceUUID}、/*类型*/
GATT_permit_read、 /*权限*/
0、 /*句柄*/
(uint8 *) simpleProfileService /* pValue */
}、
// Characteristic 1 Declaration
{
{ATT_BT_UUUART_SIZE、characterUUID}、
GATT_permit_read、
0、
simpleProfileChar1Props (simpleProfileChar1Props)
}、
//特征值1.
{
{ATT_BT_UUID_SIMPLEProfilechar1UUID}、
GATT_permit_AUTHEN_READ | GATT_permit_AUTHEN_WRITE、
0、
//simpleProfileChar1 //现在是一个数组,因此删除&作为一个数组是一个指针
simpleProfileChar1
}、
//特征1用户说明
{
{ATT_BT_UUUART_SIZE、charUserDescUUID}、
GATT_permit_read、
0、
simpleProfileChar1UserDesp
}、
此外,如果您使用 iOS 应用进行连接,则可能需要在“设置”->“蓝牙”->“简单 BLE 外设”旁边的蓝色 I”中忘记该设备,然后才会出现提示,提示您输入密码。
我的"设置 GAP 绑定管理器"代码块与我之前的帖子中的代码块相同。
再次感谢您的帮助!
Ian