使用挑战 - 响应方案进行身份验证

6个帖子/ 0新
最后一篇
razp.
离线
最后一次露面:6个月前1年
加入:2017-02-08 09:20
使用挑战 - 响应方案进行身份验证

你好,

我们的设备是我们希望在移动应用程序中与用户分享的信息来源,但我们想拥有这些信息,而不是让第三方写另一个移动应用程序并获取设备信息。为此目的,蓝牙定义了“安全”质询 - 响应身份验证:双方需要了解一些秘密字符串,只有两个都满足另一侧“知道”秘密,将允许允许连接。

我们使用SPS配置文件将信息传输到我们的移动应用程序。

1. SDK是否支持此功能?
2.如果是,如何启用它?

亲切的问候,
raz.

设备:
mt_dialog.
离线
最后一次露面:3个月3天前
职员
加入:2015-06-08 11:34
嗨razp,

嗨razp,

1)如果您的意思是,您希望在580上的BLE规范定义的BLE安全性,那么是的,SDK支持它。

2)请注意,BLE安全性有很多选项,具有多个配对方法和安全性,请检查BLE规范以获取更多信息,另外请查看BLE_APP_SECURY示例以实现此类您的项目中的功能。

由于MT_dialog

razp.
离线
最后一次露面:6个月前1年
加入:2017-02-08 09:20
嗨MT.

嗨MT.

正如你提到的,有很少几个选项。
我未能找到挑战 - 响应身份验证方案的任何引用。也许它被不同的名称引用,你能更具体吗?

亲切的问候,
raz.

注。
I am assuming this feature is implemented in SDK code and it's a matter of setting the correct configuration to activate it.

mt_dialog.
离线
最后一次露面:3个月3天前
职员
加入:2015-06-08 11:34
嗨razp,

嗨razp,

You have to be more specific to your requirements, the security provided by the BLE specification is standard and all the schemes that the BLE offers are supported by the SDK, i am not able to tell what do you mean exactly by challenge-response authentication scheme and what your requirements are.

Summing up a few things regarding the security overview in order to give you some guidance. If you activate the BLE security that means that your devices in order to exchange data they will have to go through the pairing procedure. So that means that in order to initiate the pairing either your peripheral will send a security request to the central upon connection or the devices will connect and if the master of the connection attempts to read or write at a secured characteristic the access will be denied so will have to go through the pairing method (exchange the required keys for subsequent connections) or he will have to go through encryption (in case the devices were previously paired, check if the keys that are present on the devices match).

BLE规范定义了3个安全级别,没有安全性,安全级别1和2.在安全级别1(我认为最适合您想要做的内容),您有两个选项,与加密和经过认证的配对进行加密,安全性1对BLE规范的加密认证配对意味着您必须为您的设备设置PIN或OOB数据代码,以便访问它并通过配对过程,因此BLE规范的身份验证是知道谁是谁在配对过程中另一侧的设备。一般而言,即使您使用Just Works方法(没有密钥条目),您只需与随机设备配对,您将能够实现挑战 - 响应身份验证方案,因为在每个后续连接上您将能够丢弃每个设备这不介绍在加密请求尝试中存储在外围设备中的EDIV和RAND键,以便重新恢复您存储的绑定数据。

在SDK和示例中,在某些示例中,您描述的方案在某些示例中没有完全实现,当您定义CFG_APP_Security时,包括安全处理程序(User_callback_config.h文件.app_pairing_request,.app_on_tk_exch_nomitm等)和函数在user_config.h文件中设置.security_request_scenario成员在user_config.h文件中,安全请求将发送到中央,设备通过配对过程,但您需要额外的实现来拒绝访问将请求连接的其他中心您必须设置安全设置。完整的安全示例是上面指示的例子。

由于MT_dialog

razp.
离线
最后一次露面:6个月前1年
加入:2017-02-08 09:20
嗨MT,

嗨MT,

谢谢你的全面回应。
我们希望使用的身份验证方案在蓝牙核心规范Vol.2-5身份验证中定义。本节请参阅两种方案:“遗留身份验证”和“安全身份验证”。
我从查看SDK代码和写作的理解是没有实现这些身份验证方案。

1)是正确的吗?
2)您是否知道在SDK外部的此方案的任何实现?也许你的客户?
3)您是否知道是否在Android和iOS中实现了这些方案?

您的回复受到赞赏。
亲切的问候,
raz.

mt_dialog.
离线
最后一次露面:3个月3天前
职员
加入:2015-06-08 11:34
嗨razp,

嗨razp,

1)关于安全身份验证,这是580不支持的东西,因为SoC系列使用的BLE堆栈仅使用4.2规格的强制性功能(它为4.2合格),这意味着安全连接aren'支持。关于遗留身份验证,这是自SDK支持的4.0规范以来,这是标准身份验证,因为在我的前一篇文章中提到了SDK。

2)Regarding implementing security and authentication on the SDK i trust that you are allready aware with the Tutorial 5 Pairing, Bonding and Security.

3)据我所知,大多数Android设备都支持这种方案(遗留安全性)。

由于MT_dialog