当前位置:首页 > 消费电子 > 消费电子
[导读]安全管理的简介在蓝牙的SMP安全管理简介这篇文章中有介绍。这里将介绍BLE安全管理(SM)的详细的配对的方法。在配对过程开始时,第一阶段就是双方交换支持的配对特征,如果有

安全管理的简介在蓝牙的SMP安全管理简介这篇文章中有介绍。这里将介绍BLE安全管理(SM)的详细的配对的方法。

在配对过程开始时,第一阶段就是双方交换支持的配对特征,如果有一方不支持配对,那就不会进行配对,如果都支持配对,那么就会选择合适的方法进行配对了。

配对特征

首先看下这个配对特征的内容都有哪些(前三个将决定配对第二阶段的key生成方法):

- IO capability;

- OOB;

- authenTIcaTIon requIRements;

- key size;

- key diSTribute。

配对中产生的Key

LE legacy pairing

Temporary Key(TK):短暂存在的Key,128-bit,用来产生STK的;

Short Term Key(STK):128-bit,会被用来加密配对后的链路。

LE SECUre ConnecTIons

Long Term Key(LTK):128-bit,会被用来加密配对后的链路。

authenTIcation

authentication requirements是GAP设定的,主要是对Bond类型和MITM(man-in-the-middle)的要求。

key distribute

对于key distribute,Initiator首先会将自己的需求发给Responder,表明自己想发哪些Key,而且想要对方发哪些Key。而Responder收到后,会回复确定最终双方能够分发的Key。这层协商就两步,比较简单。

安全属性-Security Properties

分为如下几类安全属性:

- LE Secure Connections pairing(BT4.2才支持);

- Authenticated MITM protection(有人参与干涉的安全,可以是人输入密码,或者通过OOB获取密码,对于Secure Connections还支持数字比较的方式);

- Unauthenticated no MITM protection;

- No security requirements;

IO capabilities

表明输入,输出的能力。输入是按键、键盘,输出是显示数字用的界面。

输入能力

 

 

输入输出的组合

 

 

OOB Authentication Data

OOB Auth Data是一个设备持有对端的Data,用来对对端设备进行authenticate。

- LE legacy pairing:要两端都持有对方OOB Auth Data才用OOB方法;

- LE Secure Connections pairing:至少一端持有OOB Auth Data即可用OOB方法。

加密Key Size

加密Key Size都在都在7到16 bytes之间;

两端设备要选择相互的max key len中较小那个;

两端设备要检测max key len是否小于自己的min key len,小于的话pair失败;

产生的key到最终key有可能要裁剪。key一生成就是16 byte的key值,但是max key len小于16时,那就要缩减成len较小的resulting key再来分发了。

配对算法

在第一阶段交换配对特征后,这些特征内容将会用来选择确认用哪种Key生成方法。

比如Temperary Key的生成:如Just Works,Passkey Entry, OOB都可以用来生成TK,只是要先看设备是否具备这种能力。

选择Key生成的方法

如果auth Req中MITM没有,则说明不需要人参与中间,所以IO capabilities会被忽略,只用Just Works就OK了。

如果有OOB data,auth Req将可直接忽略,会直接选择OOB的方式了。

Legacy pairing生成STK

 

 

Use IO capabilities对应的具体算法

上面两个图中都有Use IO capabilities一项,其实这一项又有细分:

 

 

 

 

LE Legacy Pairing - Just Works

Just Works方式不能抵抗窃听者和中间人攻击,只有在配对过程时没有遭受攻击,后面加密的链路的数据传输才是可信的。安全级别很低。

LE Legacy Pairing - Passkey Entry

这种方式通过输入6位数字的方式来进行配对,生成STK。6位数是随机产生的在000000到999999之间的数值,这个数值相当于一个TK,比如远端显示这个数字,需要在本地端输入这个数字给本地设备与远端配对。如输入019655,那此时的临时Key–TK是:0x00000000000000000000000000004CC7。

Out of Band

这种方式是通过BLE之外的,设备上的其他方式来获取这个OOB data,比如通过IR红外,或其余的方式,因此对于蓝牙窃听者/攻击者而言这个data的传输是不可见的了,因此会显得要安全些。

LE Legacy Pairing第二阶段

即是STK的生成,这一部分可简述为以下步骤的实现:

1. Initiator生成一128-bit随机数Mrand,并使用这个Mrand结合一些其他的输入,使用密码工具箱中c1计算出一个128-bit的Mconfirm值:

Mconfirm = c1(TK, Mrand,

Pairing Request command, Pairing Response command,

initiating device address type, initiating device address,

responding device address type, responding device address)

Responder也生成一128-bit随机数Srand,并使用这个Srand结合一些其他的输入,使用密码工具箱中c1计算出一个128-bit的Sconfirm值:

Sconfirm = c1(TK, Srand,

Pairing Request command, Pairing Response command,

initiating device address type, initiating device address,

responding device address type, responding device address)

然后Initiator将其计算的Mconfirm值通过Pairing Confirm包发送给Responder,而Responder也将其计算的Sconfirm值通过Pairing Confirm包发送给Initiator;

Initiator收到Sconfirm后,再将Mrand值通过Pairing Random包发送给Responder;

Responder收到Mrand值后计算它的Mconfirm值,再跟前面那个Initiator送过来的Mconfirm值进行比较,若不同说明配对失败了。若相同,则Responder也会将它的Srand值通过Pairing Random包发送给Initiator;

而Initiator也会计算收到的Srand值的Sconfirm值,并跟前面那个Responder送过来的Sconfirm值进行比较,若不同说明配对失败了,若相同,继续;

Initiator计算STK,并通知其Controller允许链路加密:

STK = s1(TK, Srand, Mrand)

纵观以上各过程,其实就是两者互送一个128-bit随机数用来生成STK。窃听者或攻击者只要知道TK,这步骤是很容易破解的。

LE Secure Connections的第二阶段

即LTK的生成,比Legacy pairing还是复杂很多的,这也是BT 4.2安全性要高很多的原因了。这部分这里只简单说明下内容,详细的过程需对照Spec的流程图了。

Public Key交换

Authentication阶段1-Just Works或Numeric Comparison

Authentication阶段1-Passkey Entry方式

Authentication阶段1-Out of Band方式

Authentication阶段2和LTK计算

BR/EDR, LE交叉Key引用

这部分是指蓝牙双模设备,且支持Secure Connections,配对Key其实可以相互共享使用的,这样可以省略掉一些重复配对,不过Key也有个换算的算法的,即密码工具箱中的h6。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭