Zigbee系统安全服务机制的研究
2016-12-01郭文东
郭文东
(河北省财政厅信息中心,石家庄 050000)
Zigbee系统安全服务机制的研究
郭文东
(河北省财政厅信息中心,石家庄 050000)
ZigBee是一种具有独特优越特性的短距离、低速率、低能耗无线通信技术,无线测控网是其最主要的应用领域,它正在成为无线互联网的一个重要组成部分和补充。ZigBee的接入网安全问题将会是整个无线互联网安全体系的重要问题之一,具有很深刻的研究意义。本文对ZigBee各层安全机制进行了研究。首先分析Zigbee安全服务体系,详细阐述其具体内容,后过渡到安全服务拓展,进而研究关于Zigbee网络信息传输过程中的安全问题。
无线通信;ZigBee;网络信息传输;体系分析;服务拓展
1 引言
ZigBee技术是一种应用于短距离范围内,低传输数据速率下的各种电子设备之间的无线通信技术。ZigBee名字来源于蜂群使用的赖以生存和发展的通信方式,蜜蜂通过跳ZigZag形状的舞蹈来通知发现的新食物源的位置、距离和方向等信息,以此作为新一代无线通信技术的名称。ZigBee过按去又称为HomeRF Lite,RF-EasyLink,FireFly无线电技术,目前统一称为ZigBee技术。由于信息安全日趋重要,本文从Zigbee安全服务体系分析、安全服务拓展两方面,来分析研究关于Zigbee网络信息传输过程中的安全问题。
2 Zigbee安全服务体系分析
2.1 安全模式和安全组件
MAC层允许对报文进行安全操作,但并不强制安全的传输,会根据设备当前运行的模式以及所选择的安全套件,对设备提供不同的安全服务,有以下三种安全模式:
(1)不安全模式:不提供任何安全服务。
(2)ACL模式:不提供加密保护,必须由上层实现其他机制确认发送消息设备的身份。这种模式仅仅提供访问控制,作为一个简单的过滤器只允许来自特定节点发来的报文,因此,这种模式不能给报文提供任何安全性也不能防止恶意节点的攻击。
(3)安全模式:在此模式下的设备通过选择不同的安全套件来获取不同的安全服务。
安全组件的标识包括对称密钥算法、模式以及完整性校验码的长度等信息。ZigBee的安全机制是在MAC层实现的,应用程序通过在协议栈中设置恰当的参数调用某一级别安全组件,默认为无安全措施。IEEE802.15.4提供了8种可选的安全组件,应根据需要选择安全组件中的任意1种,每个安全组件提供不同类型的安全属性和安全保证,见表1。
表1 ZigBee安全组件表
2.2 安全架构和设计
2.2.1 安全假定
ZigBee安全架构提供的安全等级取决于对称密钥的保管,基础是采用的保护机制和执行合适的加密机制及相关安全策略。对安全架构的信任最终简化为对设置安全初值,安装密钥材料的信任和密钥材料的安全处理和储存的信任。
安全协议的执行,例如密钥的建立,是假定执行了完整的协议,没有遗漏任何步骤。假定随机数字发生器如期运作。而且,假定设备外部不能以不安全方式获得密钥。这些假定中以下的附加说明适用于:由于网络设备的低成本,我们一般不能假定硬件是抗干扰的。因此,设备的物理访问可能会导致访问密钥材料、其他保密信息存取,以及安全软件和硬件。
由于成本限制,ZigBee只好假定不同的应用使用逻辑上不分开的相同无线设备(比如使用防火墙)。再者,从特定设备的角度看,甚至不可能去证实另一个设备上不同应用之间的加密分离(除非认证),或者甚至在此通信协议栈的不同层之间有没有被合适地执行。因此,我们必须假定使用相同无线设备的各自应用互相信任,也就是说,没有加密任务分离。
2.2.2 安全设计选择
一个设备的开放信任模式有深远影响。它允许在同一设备的不同层之间重复使用相同的密钥材料,且允许在设备到设备的基础上实现端到端的安全,而不是在两个通信设备的两个特定层之间(或者甚至是两个应用程序之间)。但是,我们还需要考虑的是,是否关注恶意网络设备未经允许通过网络在整个网络中传输帧的能力。
从这些意见可以得出以下架构设计选择:
首先,建立“最初产生帧的那一层负责最初加密它”这一原则。例如,如果一个NWK层命令帧需要保护,应当使用NWK层安全。
第二,如果要求保护服务不被盗窃(例如不被恶意网络设备盗窃),为了所有帧使用NWK层安全,除了那些在一个路由器和一个新加入的设备(直到新加入的设备收到活动网络密钥)之间传递的帧,只有已经加入了网络并顺利收到了活动网络密钥的设备,才能将它的信息在网络上多跳之间通信。
第三,由于有开放信任模式,安全可以基于每个层重复使用密钥。例如,活动网络密钥可以用于加密APS层广播帧或NWK层帧。密钥的重复使用有助于降低存储成本。
第四,端对端安全使能,这样只有源和目标设备可以存取它们的共享密钥。这限制了对那些含有重要信息的设备的信任要求。另外,它保证设备间的路由信息的实现可以独立于信任考虑(因此如果使用了安全,有助于注意力分离)。
第五,为了简化设备的互用性,一个特定网络里所有设备和一个设备里所有层使用的安全等级应该相同。如果一个应用程序的负载的安全需要高于一个给定网络提供的负载,该应用程序应该形成它自己更高安全等级的独立网络。
2.2.3 安全密钥
一个ZigBee设备网络之间的安全是基于一个“连接”密钥和一个“网络”密钥。APL对等实体之间的单播通信是通过两个设备共享一个128位的连接密钥的方式加密的,而广播通信是通过网络中所有设备共享一个128位的网络密钥加密的。指定的接收者总是知道准确的安全安排,也就是说,接收者知道一个帧是用一个连接密钥还是一个网络密钥来加密的。
一个设备可以通过密钥传输、密钥建立,或者预安装(比如在工厂安装期间)来获得连接密钥。一个设备可以通过密钥传输,或者预安装来获得一个网络密钥。获得一个连接密钥的密钥建立技术基于一个“主”密钥。一个设备可以通过密钥传输,或者预安装来获得主密钥(为了建立相应的连接密钥)。最终,设备之间的安全取决于这些密钥的安全初始化和安装。
2.2.4 ZigBee安全架构
ZigBee安全架构包括在协议栈两个层次的安全机制。NWK层和APS层负责安全传输它们各自的帧。此外,APS子层提供了建立和维护安全关系的服务,ZDO设备对象管理一个设备的安全策略和安全配置。
2.3 MAC层安全
MAC层负责自身的安全进程,而上层应决定使用哪个安全级别。在ZigBee网络中,应根据MAC个域网信息库(Personal area network Information Base, PIB)中的macDefaultSecurityMaterial和macACLEntryDescriptorSet两个参数的安全资料对安全进程进行处理。上层(如应用层)应将macDefaultSecurityMaterial的值与来自NWK层的共享邻居设备的APS的LK密钥的值一致,设置macACLEntryDescriptorSet的值与来自NWK层的主动网络密钥、计数器的值一致。安全组件应该为CCM*,安全级别应该为NIB中的nwkSecurityLevel标识的值。
2.4 NWK层安全
NWK层为MAC层的正确操作提供保障,为APL层提供合适的服务接口。当一个NWK层帧需要安全保护时,NWK层利用带有CBC-MAC操作模式的增强计数器中的AES加密和鉴权保护帧安全。上层(例如:应用层)通过设置安全密钥,帧计数器和安全级别来控制安全进程操作。
2.5 APL层安全
APS帧格式由APS帧头和APS负载域组成。APS帧头包括帧控制域和地址域。当一个安全策略应用到一个APDU时,APS帧控制域的安全子域设置为1,用来标识辅助帧帧头的存在。
3 ZigBee安全服务扩展
3.1 数据加密服务
3.1.1 数据加密服务原理
数据加密使用的密钥可能是一组设备共享的(通常作为default key存储)或者两两共享的(通常存于单独的ACLentry中),数据加密服务于Beacon和command以及数据载荷。
ZigBee使用AES-128加密算法。网络层加密是通过共享的网络密钥来完成,它可以阻止来自外部的攻击;而设备层是通过惟一链接密钥在两端设备间完成加密,它可以阻止内外部的攻击。但是加密技术的有无不会影响顺序更新、完整性和鉴权。
3.1.2 数据加密过程
数据加密实验选用NWK层输出帧的安全处理。如果NWK层有一个帧,包括一个头NwkHeader和负载payload,需要安全保护并且nwkSecurityLevel>0,如果是一个NWK数据帧,NLDE-DATA.request的SecurityEnabled参数值为TRUE,应按照如下步骤实施安全:
(1)从NIB属性nwkSecurityMaterialSet中获得nwkActiveKeySeqNumber,使用它去检索活动网络密钥key、输出帧计数器OutgoingFrameCounter和密钥序列号KeySeqNumber。从nwkSecurityLevel获得安全等级。如果输出帧计数器值为4字节表示的整数232-1,或如果密钥不能获得,安全处理失败,不能对本帧进行进一步安全处理。
(2)建立辅助头AuxiliaryHeader。
⊙ 安全控制域应该如下设置:安全等级子域
应该设置为步骤1中获得的安全等级;密钥标识符子域应该设置为“01”(即活动网络密钥);扩展的临时子域应该设置为1。⊙ 设置源地址域为本地设备的64位扩展地址。⊙ 帧计数器域设置为步骤1中的输出帧计数器
读数。
⊙ 密钥序列号域应该设置为步骤1获得的序列号。(3)执行CCM*模式加密和认证操作。
⊙ 参数M从有关表格中对应于第1步的安全级
别中获得。
⊙ 位字符串Key应从第1步获得。
⊙ 该临时N应是13字节字符串,使用第a步安全控制域、第d步获得的帧计数器域、第c步获得的源地址域构成。
⊙ 如果安全等级需要加密,字节字符串a应该是字符串NwkHeader || AuxiliaryHeader,字节字符串m应该是字符串Payload。否则,八字节字符串a是字符串NwkHeader ||AuxiliaryHeader || Payload,字节字符串m应该是长度为零的字符串。
(4)如果步骤3调用的CCM*模式输出“无效”,安全处理失败,本帧不能进一步进行安全处理。
(5)让c成为步骤3的输出结果。如果安全等级需要加密,加密的输出帧为NwkHeader||Auxiliary Header||c,否则,加密的输出帧为NwkHeader|| AuxiliaryHeader ||Payload||c。
(6)如果加密的输出帧大于aMaxMACFrame Size,安全处理失败,本帧不能进一步进行安全处理。
(7)第一步获得的输出帧计数器应该增加一,并且储存在网络安全材料描述符的OutgoingFrame Counter元素中,可由NIB nwkActiveKeySeqNumber引用,即这个和保护帧使用的密钥相联系的的输出帧计数器值被更新。
(8)安全控制域的安全等级子域重写为3位的全零字符串“000”。
3.2 数据完整性服务
3.2.1 数据完整性服务原理
利用消息完整性校验码(MIC)保证没有密钥的节点不会修改传输中的消息,进一步确认消息来自一个知道密钥的节点。对信息的完整性保护提供四种可供选择,分别是0,32,64,128位,默认采用64位。
3.2.2 数据完整性验证过程
数据完整性验证实验选用APS层输入帧的安全处理。如果APS层收到一个加密的帧(由一个头ApsHeader,辅助头AuxiliaryHeader和负载SecuredPayload组成),如APS头帧控制域的安全子域所指示,它应按照如下步骤执行安全处理:
(1)设置序列号SequenceNumber,密钥标识符KeyIdentifier和来自辅助头AuxiliaryHeader的帧计数器值Received Frame Counter。如果ReceivedFrameCounter是4字节表示的整数232-1,安全处理会失败,本帧不能进一步进行安全处理。
(2)从NIB地址映射表中确定源地址Source Address,使用APS帧的源地址作为索引。如果源地址是不完整的或者不可用的,安全处理会失败,本帧不能进一步进行安全处理。
(3)通过以下方式获得合适的安全材料。如果安全材料不能获得,安全处理会失败,本帧不能进一步进行安全处理。
4 结束语
随着ZigBee网络技术、无线通信技术和计算机网络技术的发展,ZigBee无线网络因其可移动性、安装简便、高灵活性、低能耗性以及扩展性而得到迅猛发展。在ZigBee无线网络带给人们极大的方便的同时,也带来了一系列有限网络不存在的安全问题,安全问题己经成为限制ZigBee无线网络技术应用普及的一个主要障碍。本文通过对ZigBee协议安全层规范的研究,初步掌握了MAC层、NWK层和APL层各自的安全服务,并对三层的安全服务进行深入研究;对ZigBee安全服务内容进行详细深入研究,在NWK层和APL层实现帧的安全进程;从数据加密服务和数据完整性服务两部分来阐述Zigbee安全服务拓展,能够让安全性得到更好的保障。■
[1] 徐小涛,高泳洪,章炜等.基于IEEE802.15.4的ZigBee无线网络数据传输安全的研究与探讨[J].信息网络安全,2009.6:10-12
[2] 虞志飞,邬家炜.ZigBee技术及其安全性研究[J].计算机技术与发展,2008.18(8):144-147
[3] 黄太波,赵华伟,潘金秋等.ZigBee协议栈的安全体系综述[J].山东科学,2012.25(2):59-66
[4] 杨斌.基于AES的ZigBee标准安全机制分析[J].计算机工程与科学,2010.32(007):42-45
[5] 徐健,李小珉.ZigBee的MAC层安全研究[J].网络与通信,2009.18
[6] 金纯,罗祖秋,罗凤等.ZigBee技术基础及案例分析[M].北京:国防工业出版社,2008
[7] 任秀丽,于海斌.基于ZigBee技术的无线传感网的安全分析[J],2006 [8] 蒋挺,赵成林.紫峰技术及其应用(IEEE 802.15.4)[M].北京:北京邮电大学出版社,2006
[9] 聂晓培.ZigBee标准的安全服务体系结构分析[J].网络安全技术与应用,2009.1
[10] 张旖旎.ZigBee协议的安全层研究与实现[D].沈阳工业大学,2008
[11] 孙静.ZigBee网络安全性分析[J].电脑与电信,2010(011):38-40
[12] 覃志松,黄延磊.Zigbee无线传感器网络安全研究及改进[J].微计算机信息,2010(8):54-55
[13] 周胜根.基于ZigBee技术的无线传感器网络研究与实现[D].昆明理工大学,2011
[14] 何明星,林昊.AES算法原理及其实现[J].计算机应用研究,2002.19(12):61-63
[15] 孙爱娟,武俊峰.AES加密算法中的S-盒及其MATLAB实现[J].信息技术,2008.11:021
[16] 杨斌.基于TC和AES的ZigBee标准安全性分析[J].计算机工程与设计,2010(011):2439-2441
[17] 田野,杨作军,傅天爽.一种AES-CCM 128bit硬件加密器的优化设计[J].齐齐哈尔大学学报(自然科学版),2011.3:012
中国卫通大力支持我国卫星通信领域标准化工作
由中国卫通集团有限公司(下称中国卫通)作为牵头单位编写的行业标准《YD/T 2721-2014 地球静止轨道卫星固定业务的链路计算方法》于2015年12月正式出版发行,至此,中国卫通为支持中国通信标准化协会的工作,为我国的卫星通信行业标准领域又作出了新的贡献。
自中国通信标准化协会无线通信委员会(CCSA TC5)于2008年9月成立“卫星通信任务组(SGW1)”,以及于2010年正式转为“卫星与微波工作组(WG10)”以来,中国卫通作为卫星通信领域的重要企业,一直被选任作为TC5 SGW1/WG10的组长单位,并由中国卫通科技委副主任陆绥熙担任组长,主持开展工作组日常工作及相关会议。工作组成立以来,在卫星通信领域共开展了19项国家或行业标准、1项行业研究报告的相关研制工作,其中14项标准与1项研究报告已全部完成了立项、审批、编写、报批等相关工作与程序,并正式发布,5个标准项目正在审批或研制中,大大超过了2001~2008年间共发布7个行业标准的较低数量,有效改变了当时我国卫星通信标准化工作长期停滞的局面,在推进卫星通信行业标准化和应用产业方面作出了显著成绩和贡献。
中国卫通除认真做好工作组的组织工作外,还积极参与到具体的项目工作中,如《YDT 2611-2013 卫星固定业务干扰判定和干扰源定位方法》、《Ku频段移动中使用的车载卫星通信地球站通用技术要求》等多项标准的编写与制订以及现行标准的复审和修订工作。 2012~2014年间,作为牵头单位组织完成了《YD/T 2721-2014 地球静止轨道卫星固定业务的链路计算方法》标准的研制工作,使业内长期存在的多种不同的链路计算方法得以规范统一,使卫星通信系统的设计和使用更加合理,进一步发挥了中国卫通在卫星通信标准领域的积极作用。
基于在标准化领域积累的经验,中国卫通继续积极参与相关工作。作为牵头单位,新近提出了《卫星通信地球站入网验证测试方法》与《卫星通信链路大气和降雨衰减计算方法》两项标准项目的制修订申请;作为参与单位,参与研制《通信中心机房环境条件要求》、《通信用240V/336V输入的直流-直流模块电源》、《通信高热密度机房温控设备》三项行业标准项目,并组织相关领域的专家投入到紧张的研究工作中。此外,中国卫通还参加了宇航标委会和无线电干扰标委会的工作,以力求为我国卫星通信标准化工作作出更大的贡献。(贾玉仙)
Research on the Security Mechanisms for ZigBee System
Guo Wendong
(Hebei Province Department of Finance, Information Centre, Shijiazhuang, 050000)
ZigBee is an excellent feature unique short-range, low speed, low power wireless communication technology, it is becoming an important part of the wireless Internet. ZigBee Access Network security will be one of the most important issues of the wireless Internet security system, with heavy research significance. So we do some researches for ZigBee layers of security mechanisms, Firstly, introduce Zigbee security service system ,detail its specific contents, after the transition to the security services to expand, and then study problems regarding security Zigbee network information transmission process.
Wireless communication; ZigBee; Network information transfer; Systems analysis; service expansion
10.3969/J.ISSN.1672-7274.2016.01.006
TN92 文献标示码:A
1672-7274(2016)01-025-05