您当前的位置:五五电子网电子知识通信技术蓝牙技术ULP蓝牙技术的安全设计 正文
ULP蓝牙技术的安全设计

ULP蓝牙技术的安全设计

点击数:7186 次   录入时间:03-04 11:55:44   整理:http://www.55dianzi.com   蓝牙技术
 
       2. 2字节的加密区分标识符密钥(EDIV),6字节的申请者随机地址(IRA)。
 
       3.当连接已经建立,从广播中申请者得到一个10字节的随机向量(IRV)作为层协议数据单元PDU(类型0xFD),然后从长期密钥中,申请者创建会话密钥SK和设置初始值(IV)。
 
       创建会话密钥SK:发送设置长期密钥命令HCI_Set_key(0x00,LTK)到链路层,返回完成命令HCI_Command_Complete(),再发送加密请求命令HCI_encrypt,返回完成创建会话密钥命令HCI_Command_Complete(SK),
,       
即可表示为:
SK = (IRA,IRV),
IV = {IRA,A0,A1,A2}。
 
       4.SK和IV被分配给链路层(LL),作为最后的步骤,LL操作中,申请者将初始化“连接模式变化”。
链路层设置会话密钥和初始值:分别发送命令HCI_Set_key(0x01,SK)和HCI_Set_IV(addr|addr[0…23])到链路层设置,返回完成设置命令HCI_Command_Complete()。
 


 
3.4密钥更新 
       安全连接建立之后,不支持密钥更新或者重建安全参数。唯一的例外就是匹配程序,在匹配的第一阶段后,匹配程序中的会话加密密钥和状态发生改变。
 


www.55dianzi.com

4匹配和密钥交换 
       本文的匹配算法有两个扩展模式,在前n个连接中密钥改变(如果攻击者错过一个更新,安全性提高)。第一个扩展模式尤其适合于移动设备,第二扩展模式是假定两个设备有相同的地址,干扰硬件攻击者,提高密钥的安全性,该模式适用于家庭等固定环境。
 
匹配分两个阶段执行。开始执行功能交换,使用开始匹配请求和开始匹配响应。第三阶段没有匹配。
 
4.1匹配和密钥交换的步骤 
       ULP蓝牙的匹配分三个阶段进行,其流程如图5所示。
       第一阶段,成功匹配功能交换后,开始执行第一阶段操作。这一阶段不受加密保护,连接中直接进入扩展的状态(伴随着PI 字段设置为连接请求和SEC 字段关闭)。
 
       第二阶段,在加密通道中执行匹配,受临时密钥或者第一阶段的结果或是早期扩展阶段的保护。该阶段的匹配可以直接输入(PI 字段设置为连接请求),在此保护通道中下面之一被执行:
 
       1.传送长期密钥和认证(从未来的广播到未来的申请者)。
 
       2.传送扩展(临时)密钥和认证(从未来的广播到未来的申请者),在扩展模式中,进行有限的密钥交换。
 
       第三阶段,第三阶段和匹配无关,是正常的会话,并且使用了在第二阶段同样的密钥保护。注:广泛的与这个密钥通信可能会导致(取决于匹配机制)攻击。攻击长期密钥可能导致在第二阶段中提供的长期密钥长度少于128 bit。第三阶段提供方便和实用性的扩展模式,以及可能简单的设备。
 
       总体层次规范定义了第三阶段的用处,如果没有定义任何第三阶段的用途,匹配的设备将终止匹配会话,用长期密钥建立新会话。


 
 
 

4.2匹配第一阶段的具体实现 
       匹配的第一阶段,建立一个共享密钥,定义自己的程序。匹配的第一阶段产生一个共享密钥SK。可能在进入第一阶段匹配时设置PI连接请求(SEC不设置)。
 
4.2.1明文密钥匹配
       最简单的匹配算法没有设置防止攻击的保护,在规定的时间内和地点,进行匹配,它包含两条消息,一条是从申请者中一个16 bit的随机向量RAND发送密钥转化为PDU,另一条是在广播中发送一个密钥检验PDU作为响应。两个设备计算共享密钥:
 
       临时密钥(TK) =
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}
SK = ETK(RAND)
其匹配过程如图6所示。


 
 
4.2.2预共享密钥匹配 
       一个设备,由于某些其它的连接媒体、密钥放入可能性或者其他原因有一个共享秘密,可作为种子用于匹配,那么使用预共享密钥匹配,信令相当于明文关键匹配,计算临时密钥TK,用AES加密模块,创建,这里mx有16字节的消息模块,最后生成TK,初始化H0定义为
H0=
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}
信令和随机数RAND作为明文密钥匹配处理。SK = ETK(RAND),共享密钥有临时密钥加密随机数生成。
 
4.3匹配第二阶段的具体实现
       经过第一阶段产生的共享密钥SK,用于第二阶段的初始化加密会话,连接请求中设置PI 字段和SEC 字段进入第二阶段。
 
       申请者(如果有指示密钥传送给广播)首先发送它的密钥资料给广播。广播收到长期密钥LTK和IR后,它发送各自的参数给申请者。这条消息会有顺序的传送:长期密钥和身份根IR。
 
       因此广播接受申请者的认证(如果广播指明不显示它的密钥),或申请者接收到广播,即完成第二阶段。在阶段三,设备可能继续通信。
 
5.总结
       综上所述,ULP蓝牙系统本身提供的安全系统具有相当的安全特性【5】。在ULP蓝牙用于商业或军事等方面时,现有的点对点的密钥分配和认证机制将无法满足安全要求,采用AES加密算法是必需。文章介绍了ULP蓝牙认证、匹配,描述了它的体系结构。相比蓝牙而言,在安全上有以下特点:
 
       1.现有的蓝牙认证【6】,主要是通过质询—响应的方法进行认证。ULP蓝牙的认证基本相同,但是ULP蓝牙的认证机制中,通过设置SEC和PI的值进行不同的认证。安全措施更明确、简单,易于实现。
 
       2.蓝牙加密使用E0加密算法【7】,缺点在于若一个伪随机序列发生错误,便会使整个密文发生错误,致使在解密过程中无法还原回明文。蓝牙E0流加密中用到的 LFSR易受到相关攻击和分割解决攻击,且用软件实现效率非常低。
 
       ULP蓝牙中使用的是用AES加密模块。虽然传输速度有所降低,其安全性更高。适合小器件设备,如手表、运动传感器、医疗设备等等,传统蓝牙适用于传输大量数据的设备。ULP蓝牙的加密的位置处于HCI 层,在流量控制和重传机制下,可以避免多次加密无用的数据。针对性更强,对不需要加密的数据进行了过滤,如命令分组、事件分组。所以它的日常连接次数可达到50次,而传统蓝牙次数在5次以内。并且加密方案采用低成本的可编程逻辑器件和现成可用的高级加密处理的智力产权产品实现,降低了系统的成本。
 



上一页  [1] [2] 


本文关键字:蓝牙技术  蓝牙技术通信技术 - 蓝牙技术

《ULP蓝牙技术的安全设计》相关文章>>>