7个职位/ 0个新职位
最后发表
wuhanpin
离线
最后看到:1年8个月前
加入:2015-07-20 08:21
DA14583连接认证如何实现

嗨,对话框
我想实现在蓝牙连接时有个认证身份的机制,避免所有的手机应用程序都能连接我的DA14583,请问有什么机制可以实现?谢谢。

设备:
Qinjiny_Dialog
离线
最后看到:2个月2周以前
工作人员
加入:2016-11-01 05:47
你好

你好

有内置的安全管理机制,允许外部设备配对(配对,可以进行单次连接)或者绑定(成键,配对以后记录永久性的密钥),广播配置选项里也可以设置针对白名单设备开放扫描或者连接,允许灵活性的身份认证

可以参考SDK里面DA1458x_SDK \ target_apps \ ble_examples \ \ 5.0.x \项目ble_app_security的工程代码来了解相关功能。需要额外说明请参考软件开发者手册(嗯- b - 050)的8.38 ~ 8.49节里的指示和解说

wuhanpin
离线
最后看到:1年8个月前
加入:2015-07-20 08:21
你好,

你好,
我使用的5.0.3的SDK我们没有发现DA1458x_SDK \ 5.0。x \ target_apps \ ble_examples \ \项目ble_app_security的工程啊。
我只发现了有这些工程:ble_app_barebone ble_app_peripheral ble_app_profile prox_monitor_ext prox_reporter prox_reporter_ext prox_reporter_ext_spi

Qinjiny_Dialog
离线
最后看到:2个月2周以前
工作人员
加入:2016-11-01 05:47
烦请下载目前最新发布的SDK5.0.4

烦请下载目前最新发布的SDK5.0.4

wuhanpin
离线
最后看到:1年8个月前
加入:2015-07-20 08:21
你好

你好
我已经下了,但是我的项目已经在5.0.3上完成了,我想在5.0.3上班添加链接配对,可以吗?有没有例子?你的5.0.4在app_easy_security有比较大的改动直接移到5.0.3上没编译通过。

Qinjiny_Dialog
离线
最后看到:2个月2周以前
工作人员
加入:2016-11-01 05:47
这里给你一些操作步骤用于给SDK5.0.3里的祝福

这里给你一些操作步骤用于给SDK5.0.3里的ble_app_profile工程添加配对功能,希望对你的研发有帮助:

1.在da1458x_config_basic.h里,定义CFG_APP_SECURITY

(改成#定义CFG_APP_SECURITY)

2.在user_config.h里找的到结构体security_configurationuser_security_configuration,按如下修改:

Static const struct security_configuration user_security_configuration = {

.oob = GAP_OOB_AUTH_DATA_NOT_PRESENT,

.key_size = KEY_LEN,

.iocap = GAP_IO_CAP_DISPLAY_ONLY,

.auth = GAP_AUTH_REQ_MITM_BOND,

.sec_req = GAP_SEC1_AUTH_PAIR_ENC,

.ikey_dist = GAP_KDIST_SIGNKEY,

.rkey_dist = GAP_KDIST_ENCKEY,

.tk = {

。key = {0 x40 0 xe2 0 x01 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0},

},

.csrk = {

xab。key = {0, 0 xab 0 x45 0 x55 0 x23 0 x01, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0},

},

};

关键的值为十六进制:0 x01e240 = 123456,这里为了示范使用固定密码来配,对实际使用是随机生成的,看下一步

3.在app_default_handlers.c中将函数default_app_on_tk_exch_nomitm()的头两行conmment掉。这两行用于生成随机的配对码(函数app_sec_gen_tk())。如果有需要也可以不conmment这两行,添加打印输出这个随机码以便在配对时使用

Void default_app_on_tk_exch_nomitm(uint8_t connection_idx, struct gapc_bond_req_ind const * param)

// uint32_t pin_code = app_sec_gen_tk();

// app_easy_security_set_tk(connection_idx, (uint8_t*) &pin_code, 4);

app_easy_security_tk_exch (connection_idx);

4.在user_config.h中将.security_request_scenario = DEF_SEC_REQ_NEVER

改成

.security_request_scenario = DEF_SEC_REQ_ON_CONNECT

5.在user_modules_config.h修改以下定义:

#定义EXCLUDE_DLG_SEC (0)

6.

•在user_callback_config.h将各调回函数设为默认。

Static const struct app_callbacks user_app_callbacks = {

.app_on_connection = default_app_on_connection,

.app_on_disconnect = default_app_on_disconnect,

.app_on_update_params_rejected =零,

.app_on_update_params_complete =零,

.app_on_set_dev_config_complete = default_app_on_set_dev_config_complete,

.app_on_adv_undirect_complete = default_app_on_adv_undirect_complete,

.app_on_adv_direct_complete =零,

.app_on_db_init_complete = default_app_on_db_init_complete,

.app_on_scanning_completed =零,

.app_on_adv_report_ind =零,

.app_on_pairing_request = default_app_on_pairing_request,

.app_on_tk_exch_nomitm = default_app_on_tk_exch_nomitm,

.app_on_irk_exch =零,

.app_on_csrk_exch = default_app_on_csrk_exch,

.app_on_ltk_exch = default_app_on_ltk_exch,

.app_on_pairing_succeded =零,

.app_on_encrypt_ind =零,

.app_on_mitm_passcode_req =零,

.app_on_encrypt_req_ind = default_app_on_encrypt_req_ind,

};

以上代码修改仅用于测试配对功能,一次只能绑定一台设备且掉电后无法重连(绑定信息存在RAM里),需要绑定多台设备请参考支持网站参考设计里的键盘,鼠标等支持多设备连接绑定的工程代码。

wuhanpin
离线
最后看到:1年8个月前
加入:2015-07-20 08:21
你好,请问你的网站在什么地方可以提交问题

你好,请问你的网站在什么地方可以提交问题?我怎么都找不到提交问题的入口了。