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

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

你好,

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

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

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

亲切的问候,
raz.

设备:
mt_dialog.
离线
最后一次露面:2个月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.

P.S.
我假设这个特性是在SDK代码中实现的,只需设置正确的配置就可以激活它。

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

嗨razp,

你必须更具体地满足你的需求,BLE规范提供的安全性是标准的,BLE提供的所有方案都是SDK支持的,我不知道你所说的质询-响应认证方案到底是什么意思,你的需求是什么。

总结一些关于安全概述的内容,以便给您一些指导。如果您激活BLE安全性,这意味着您的设备为了交换数据,必须通过配对过程。因此,这意味着,为了启动配对,您的外设将在连接时向中心发送安全请求,或者设备将连接,如果连接的主机尝试以安全特征进行读写,则访问将被拒绝,因此必须通过配对方法(交换所需的或者他必须进行加密(如果设备以前配对过,请检查设备上的密钥是否匹配)。

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.
离线
最后一次露面:2个月3周前
职员
加入:2015-06-08 11:34
嗨razp,

嗨razp,

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

2) 关于在SDK上实现安全性和身份验证,我相信您已经完全了解教程5配对、绑定和安全性。

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

谢谢mt_dialog.