您现在的位置: 通信界 >> 数据通信 >> 技术正文  
 
ULP蓝牙技术的安全设计[图]
[ 通信界 / 《电子技术应用》2010年第10期 / www.cntxj.net / 2011/12/6 11:11:21 ]
 

摘要:介绍了ULP蓝牙技术及系统结构,重点描述了ULP蓝牙的安全机制,详细分析了其地址生成、认证过程、匹配和密钥交换等关键技术。最后比较了ULP蓝牙和传统蓝牙在安全方面的不同。

2007年6月,Wibree技术被纳入蓝牙技术联盟(SIG),并更名为超低功耗蓝牙(ULP)[1]。它继承了传统蓝牙优化运用、耗能更少、成本更低的优点,适用于小型设备件简单的数据传输。

Wibree作为一项耗电量极低的蓝牙技术成为蓝牙规格的一部分,是一种新的低功率无线技术,为业界开拓了新的市场机会及创新空间。由于采用无线方式进行通信,因此,ULP蓝牙与传统蓝牙一样面临传输数据被截获的危险。所以如何保证ULP蓝牙运用的安全,是ULP蓝牙技术设计的一个核心问题。

本文基于Bluetooth SIG的技术草案[2],讨论了ULP蓝牙技术的安全结构,介绍了ULP蓝牙的地址生成及认证、密钥生成和匹配原理的相关过程。

1 ULP蓝牙的安全构架

安全性是ULP蓝牙协议中必不可少的一部分,它提供使用保护和信息保密[3]。如图1所示,ULP蓝牙系统有三个逻辑组成部分:ULP控制器、ULP主机和HCI(主机控制器接口,介于ULP控制器与ULP主机之间,提供通信服务)。ULP控制器由物理层和链路层组成;ULP主机中主要是ULP的L2CAP协议;高层主要是应用层协议,多种剖面在高层中应用。而安全模块位于ULP控制器中的链路层和ULP主机的L2CAP协议中,由主机控制器提供控制和数据。

ULP蓝牙技术的安全设计

ULP蓝牙工作在2.4GHz的ISM(Industrial Scientific Medical)频段,其工作的中心频率为2402+K×2MHz(K=0~39),即工作频带宽度为2MHz~3.5MHz。划分为40个物理信道,其中包括3个广播信道和37个数据信道。

结构中的链路层有两种工作状态:空闲状态和连接状态,其链路层只能工作在一种工作状态下。同时,ULP蓝牙设备还有五种工作模式:广播模式、扫描模式、申请模式、主设备及从设备。

ULP L2CAP(Logic Link Control and Adaptation Protocol)处于链路控制协议之上,属于数据链路层。L2CAP对上层协议可以提供面向连接和无连接数据服务。L2CAP允许高层协议、应用发送和接收最长64KB数据包。

链路层中的连接加密过程由ULP主机负责,其中包含一个由链路层独立负责的加密子进程。加密过程由HCI_Setup_Encryption命令初始化。使用这个命令后,主设备的ULP主机就表明了链路层连接了新的加密模式。只要有这样一个来自于ULP主机的命令,一个SEC_EMPTY_REQ数据包就会在链路层的连接上被传送。

在HCI_Setup_Encryption命令之后, HCI_Command_Completed命令所表示的过程完成之前,不允许有来自于ULP主机的任何数据包。

2 ULP蓝牙认证及密钥生成过程

2.1 ULP蓝牙地址

ULP蓝牙使用两种类型的地址[4]:设备地址和存取地址,设备地址细分为公有和私有设备地址。每个ULP设备应该分配一个固定48bit的ULP蓝牙公共设备地址,而私有设备设置的地址是可选的。ULP设备只有在证明设备可靠性后,才显示其私有地址;每个链路层的连接有一个伪随机32bit的存取地址,由连接中的申请者产生,每个链路层连接不同的存取地址。ULP蓝牙系统中,只能有一个数据包格式能在广播通道数据包和数据通道数据包中同时使用。如图2所示,每个数据包含4个实体:标头、同步字、PDU和CRC。广播数据包中的同步字是固定的,数据通道中的数据包同步字是链路层连接的存取地址。

ULP蓝牙技术的安全设计

2.2 广播工作模式中认证

ULP系统中,每一台设备会产生并保持两个随机生成的密钥:鉴权(identity root)和加密(encryption root)。鉴权用于连接中生成私有地址和区分标识符密钥连接中的标识符;加密用于确立密钥标识符的安全。在任何加密连接中,广播创建密钥作为会话密钥的基础。集合密钥是在某些配对选择中创建,这些密钥只是用作保护(未来)广播中密钥的传递。

加密模式中,通过广播方式把创建的密钥分派给需要连接的所有设备或实体,鉴权可用来建立私有地址。因为鉴权每次只支持一个身份,所以许多申请者将获得同样的鉴权。广播向设备提供标识符的加密(伴随16bit标识符),在加密模式中该设备支持连接的设备。规范的基本概念有唯一的标识符密钥,被称为“长期密钥”(long term key),这个密钥分配给每个申请者。此外,加密规则仅仅是推荐使用并且在广播之外。长期密钥是不可见的,原则上能使用任何映射在16bit~128bit之间的密钥。加密标识符密钥有以下几种:IRK(Identity Resolving Key)、PIR(Pairing Identity Root)、DHK(Diversifier Hiding Key)、PIRK(Pairing Identity Resolving Key)、PDHK (Pairing Diversifier Hiding Key)。

在广播模式条件下,广播设备产生一个初始随机向量(IRV),该向量由10B的新随机数组成,也是链路层(LL)传输给申请者的第一个可能的数据包。广播设备初始化时,到达连接请求。

连接请求包括SEC字段(表明是否是加密请求)和PI字段(表明申请者连接一个匹配认证)。SEC=1,表示有2B的加密区分标识符(EDIV)和申请者6B的随机地址。

如图3所示,在SEC=1的条件下,ULP蓝牙广播模式下的认证步骤如下:

ULP蓝牙技术的安全设计

(1)解密区分标识符隐藏密钥。发送HCI_Set_key(0x00,DKH)命令到链路层,返回HCI_Command_Complete(),并再发送加密请求命令HCI_encrypt(addmaster),PAL返回请求完成命令HCI_Command_Complete()。

由EDHK计算DIV:
         DIV=EDHK(addmaster[0…15]?茌DIVhidden)
      此具体过程是:
      由Y=EDHK
      (IRA(初始化随机地址),
         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)
      DIV= {Y0, Y1} XOR {EDIV0, EDIV1}得出。或者在PI=1的条件下,即匹配连接中有:
      Y=EPDHK
     (IRA,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)
      得出DIV={Y0,Y1}XOR{EDIV0, EDIV1}

(2)创建长期密钥。发送设置加密命令到链路层HCI_Set_key(0x00,ER),返回完成命令HCI_Command_Complete(),再发送请求加密长期密钥命令HCI_encrypt(DIV),返回完成创建长期密钥命令HCI_Command_Complete(LTK)。

按以下公式重新创建长期密钥LTK:
      LTK=EER(DIV/0)
        LTK=EER
     (DIV,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
     0x00,0x00,0x00,0x00,0x00)

(3) 创建会话密钥命令。HCI_Set_key(0x00,LTK),返回完成命令HCI_Command_Complete(),再发送请求加密长期密钥命令HCI_Encrypt(addmaster/IRV),返回完成创建长期密钥命令HCI_Command_Complete(SK)。

SK=ELTK(addmaster/IRV)

(4) 链路层设置会话密钥和初始值。初始值为

IV=addmaster/addslave[0…23]

分别发送命令HCI_Set_key(0x01,SK)和HCI_Set_IV(addr|addr[0…23])到链路层进行设置,返回完成设置命令HCI_Command_Complete()。生成会话密钥SK和IV,并在链路层设置(广播地址AA={A0,A1,…,A5})。

2.3 申请模式中加密会话设置

申请者浏览广播,找到相匹配的广播地址AA={A0,A1,…,A5},初始使用6 B完全随机地址(IRA)。

(1)创建随机地址:发送HCI_Rand()命令到链路层(LL),返回HCI_Command_Complete(rand),addmaster=rand[0…47]。

(2)加密区分标识符(diverfier)密钥。发送设置加密命令到链路层HCI_Set_key(0x00,DHR),返回请求完成命令HCI_Command_Complete(),再发送加密请求命令HCI_Encrypt(addmaster),返回请求完成命令HCI_Command_Complete()。

DIVhidden=EDHK(addmaster[0…15]?茌DIV)
        由DIV计算出EDIV。
        由Y=EDHK
     (IRA,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)
     得出EDIV={Y0,Y1}XOR{DIV0,DIV1}
      或者在PI=1的条件下,即匹配中由
      Y=EPDHK
     (IRA,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00)
      得出EDIV={Y0, Y1}XOR{DIV0, DIV1}
      最后申请者请求一个连接。

①如果请求加密连接,则SEC 字段一直等于1;如果在申请者和广播设备间,扩展匹配继续进行,即PI字段设置为1。

②2B的加密区分标识符密钥(EDIV),6B的申请者随机地址(IRA)。

③当连接已经建立时,申请者从广播中得到一个10B的随机向量(IRV)作为层协议数据单元PDU(类型0xFD),然后从长期密钥中,申请者创建会话密钥SK和设置初始值(IV)。
     创建会话密钥SK:发送设置长期密钥命令HCI_Set_
     key(0x00,LTK)到链路层,返回完成命令HCI_Command_
     Complete(),再发送加密请求命令HCI_encrypt(addmaster/IRV),返回完成创建会话密钥命令HCI_Command_Complete(SK),SK=ELTK(addmaster/IRV),IV=addmaster/addslave[0…23],即可表示为:
     SK=ELTK(IRA,IRV),IV={IRA,A0,A1,A2}。

④SK和IV被分配给链路层(LL)作为最后的步骤。LL操作中,申请者将初始化“连接模式变化”。

链路层设置会话密钥和初始值:分别发送命令HCI_Set_key(0x01,SK)和HCI_Set_IV(addr|addr[0…23])到链路层设置,返回完成设置命令HCI_Command_Complete()。

2.4 密钥更新

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

3 匹配和密钥交换

本文的匹配算法有两个扩展模式,在前n个连接中密钥改变(如果攻击者错过一个更新,安全性提高)。第一个扩展模式尤其适合于移动设备;第二扩展模式是假定两个设备有相同的地址,通过干扰硬件攻击者,提高密钥的安全性,该模式适用于家庭等固定环境。

ULP蓝牙的匹配分三个阶段进行,其流程如图4所示。

ULP蓝牙技术的安全设计

第一阶段,成功匹配功能交换后,开始执行第一阶段操作。这一阶段不受加密保护,连接中直接进入扩展的状态(伴随着PI 字段设置为连接请求和SEC 字段关闭)。

第二阶段,在加密通道中执行匹配,受临时密钥或者第一阶段的结果或是早期扩展阶段的保护。该阶段的匹配可以直接输入(PI字段设置为连接请求),在此保护通道中,下面之一被执行:(1)传送长期密钥和认证(从未来的广播到未来的申请者)。(2)传送扩展(临时)密钥和认证(从未来的广播到未来的申请者),在扩展模式中,进行有限的密钥交换。

第三阶段,第三阶段与匹配无关,是正常的会话,并且使用了在第二阶段同样的密钥保护。注:广泛的与这个密钥通信可能会导致(取决于匹配机制)攻击。攻击长期密钥可能导致在第二阶段中提供的长期密钥长度少于128bit。第三阶段提供方便和实用性的扩展模式,以及可能简单的设备。

总体层次规范定义了第三阶段的用处,如果没有定义任何第三阶段的用途,匹配的设备将终止匹配会话,用长期密钥建立新会话。

ULP蓝牙系统本身提供的安全系统具有相当的安全特性[5]。在ULP蓝牙用于商业或军事等方面时,现有的点对点的密钥分配和认证机制将无法满足安全要求,因而采用AES加密算法是必需的。与传统蓝牙相比,ULP蓝牙在安全上有以下特点:

(1) 现有的蓝牙认证[6],主要是通过质询—响应的方法进行认证。ULP蓝牙的认证基本相同,但是在ULP蓝牙的认证机制中,通过设置SEC和PI的值进行不同的认证。安全措施更明确、简单,易于实现。

(2) 蓝牙加密使用E0加密算法[7],缺点在于若一个伪随机序列发生错误,便会使整个密文发生错误,致使在解密过程中无法还原回明文。蓝牙E0流加密中用到的LFSR易受到相关攻击和分割解决攻击,且用软件实现效率非常低。

ULP蓝牙中使用AES加密模块。虽然传输速度有所降低,但安全性更高。适合小器件设备,如手表、运动传感器、医疗设备等;传统蓝牙适用于传输大量数据的设备。ULP蓝牙的加密的位置处于HCI 层,在流量控制和重传机制下,可以避免多次加密无用的数据。针对性更强,对不需要加密的数据进行了过滤(如命令分组、事件分组),所以它的日常连接次数可达到50次;而传统蓝牙连接次数在5次以内。ULP蓝牙加密方案采用低成本的可编程逻辑器件和现成可用的高级加密处理的智力产权产品实现,降低了系统的成本。

参考文献

[1] HEYDONR. ULP蓝牙开启全新无线应用[J]. 电子设计应用,2007(9):34-35.
     [2] B1uetooth special interest group(SIG). Ultra low power  bluetooth technology specification[S]. Controller and host volumes,2007.
     [3] DU Sui Kang. Document for bluetooth and bluetooth ULP [J]. Seminar Eingebettette drahtlose System,2009,31(1):211-214.
     [4] HAN Hui Hua,YANG Xiao. Application of cryptographic  algorithm in bluetooth security mechanism[J]. Journal of  Northern Jiaotong,2003,27(2):24-28.
     [5] 金纯,许光辰.蓝牙技术[M].北京:电子工业出版社,2001.
     [6] 荣新华,杨寿保.蓝牙安全体系结构研究及其在双向RKE系统中的应用[J].小型计算机系统,2003,24(8):1451-1454.
     [7]  刘汉华,吴锐,全景才.蓝牙安全机制[J].电子质量,2001(6):25-28.

 

作者:《电子技术应用》2010年第10期 合作媒体:《电子技术应用》2010年第10期 编辑:顾北

 

 

 
 热点技术
普通技术 “5G”,真的来了!牛在哪里?
普通技术 5G,是伪命题吗?
普通技术 云视频会议关键技术浅析
普通技术 运营商语音能力开放集中管理方案分析
普通技术 5G网络商用需要“无忧”心
普通技术 面向5G应运而生的边缘计算
普通技术 简析5G时代四大关键趋势
普通技术 国家网信办就《数据安全管理办法》公开征求意见
普通技术 《车联网(智能网联汽车)直连通信使用5905-5925MHz频段管理规定(
普通技术 中兴通讯混合云解决方案,满足5G多元业务需求
普通技术 大规模MIMO将带来更多无线信道,但也使无线信道易受攻击
普通技术 蜂窝车联网的标准及关键技术及网络架构的研究
普通技术 4G与5G融合组网及互操作技术研究
普通技术 5G中CU-DU架构、设备实现及应用探讨
普通技术 无源光网络承载5G前传信号可行性的研究概述
普通技术 面向5G中传和回传网络承载解决方案
普通技术 数据中心布线系统可靠性探讨
普通技术 家庭互联网终端价值研究
普通技术 鎏信科技CEO刘舟:从连接层构建IoT云生态,聚焦CMP是关键
普通技术 SCEF引入需求分析及部署应用
  版权与免责声明: ① 凡本网注明“合作媒体:通信界”的所有作品,版权均属于通信界,未经本网授权不得转载、摘编或利用其它方式使用。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:通信界”。违反上述声明者,本网将追究其相关法律责任。 ② 凡本网注明“合作媒体:XXX(非通信界)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。 ③ 如因作品内容、版权和其它问题需要同本网联系的,请在一月内进行。
通信视界
华为余承东:Mate30总体销量将会超过两千万部
赵随意:媒体融合需积极求变
普通对话 苗圩:建设新一代信息基础设施 加快制造业数字
普通对话 华为余承东:Mate30总体销量将会超过两千万部
普通对话 赵随意:媒体融合需积极求变
普通对话 韦乐平:5G给光纤、光模块、WDM光器件带来新机
普通对话 安筱鹏:工业互联网——通向知识分工2.0之路
普通对话 库克:苹果不是垄断者
普通对话 华为何刚:挑战越大,成就越大
普通对话 华为董事长梁华:尽管遇到外部压力,5G在商业
普通对话 网易董事局主席丁磊:中国正在引领全球消费趋
普通对话 李彦宏:无人乘用车时代即将到来 智能交通前景
普通对话 中国联通研究院院长张云勇:双轮驱动下,工业
普通对话 “段子手”杨元庆:人工智能金句频出,他能否
普通对话 高通任命克里斯蒂安诺·阿蒙为公司总裁
普通对话 保利威视谢晓昉:深耕视频技术 助力在线教育
普通对话 九州云副总裁李开:帮助客户构建自己的云平台
通信前瞻
杨元庆:中国制造高质量发展的未来是智能制造
对话亚信科技CTO欧阳晔博士:甘为桥梁,携"电
普通对话 杨元庆:中国制造高质量发展的未来是智能制造
普通对话 对话亚信科技CTO欧阳晔博士:甘为桥梁,携"电
普通对话 对话倪光南:“中国芯”突围要发挥综合优势
普通对话 黄宇红:5G给运营商带来新价值
普通对话 雷军:小米所有OLED屏幕手机均已支持息屏显示
普通对话 马云:我挑战失败心服口服,他们才是双11背后
普通对话 2018年大数据产业发展试点示范项目名单出炉 2
普通对话 陈志刚:提速又降费,中国移动的两面精彩
普通对话 专访华为终端何刚:第三代nova已成为争夺全球
普通对话 中国普天陶雄强:物联网等新经济是最大机遇
普通对话 人人车李健:今年发力金融 拓展汽车后市场
普通对话 华为万飚:三代出贵族,PC产品已走在正确道路
普通对话 共享退潮单车入冬 智享单车却走向盈利
普通对话 Achronix发布新品单元块 推动eFPGA升级
普通对话 金柚网COO邱燕:天吴系统2.0真正形成了社保管