一种增强zigbee网络安全的加解密方法

申请号 CN201710735367.1 申请日 2017-08-24 公开(公告)号 CN107396351A 公开(公告)日 2017-11-24
申请人 四川长虹电器股份有限公司; 发明人 陈修强; 周刚; 杨家鹏; 宋世成;
摘要 本 发明 涉及zigbee技术安全领域,其公开了一种增强zigbee网络安全的加解密方法,解决传统加密方法根据固定密钥加密而存在被破解的 风 险的问题。该方法可概括为:在数据发送端的AF层将需要发送数据的部分或者全部与数据 帧 序列号进行运算操作,进行一层加密,在安全服务层再对一层加密的数据进行AES二层加密;在数据接收端首先对接收数据进行AES解密,然后在AF层进行二层解密操作,从而获得明文数据。采用二层加解密技术增强了zigbee网络的安全性。
权利要求

1.一种增强zigbee网络安全的加解密方法,其特征在于,包括以下步骤:
a.在数据发送端的zigbee应用程序框架AF层,对需要发送的数据与数据序列号进行运算操作,获得一层加密处理的AF层加密数据;
b.AF层加密数据被传输至安全服务层进行AES二层加密;
c.经过AES二层加密后的数据被传输到数据发送端的网络层和MAC层进行数据发送;
d.数据接收端接收到数据后,判断目的地址是否为自身节点,若不是自身节点则进行转发,若是,则进行解密处理;
e.数据接收端在对数据进行解密处理时,将数据由MAC层传输到网络层,再传输到安全服务层进行AES解密;
f.在安全服务层进行AES解密后的数据传输至AF层,在AF层对数据与数据帧序列号进行与步骤a中的运算操作相对应的反运算操作,获得明文数据。
2.如权利要求1所述的一种增强zigbee网络安全的加解密方法,其特征在于,所述数据接收端为zigbee协调器或zigbee路由器。
3.如权利要求1所述的一种增强zigbee网络安全的加解密方法,其特征在于,所述数据发送端为zigbee终端传感器
4.如权利要求1所述的一种增强zigbee网络安全的加解密方法,其特征在于,步骤a中,所述对需要发送的数据与数据帧序列号进行运算操作,具体包括:
对需要发送的全部数据与数据帧序列号进行运算操作;
或者,对需要发送的部分数据与数据帧序列号进行运算操作。
5.如权利要求4所述的一种增强zigbee网络安全的加解密方法,其特征在于,所述运算操作为:异或运算或者加、减、乘、除或者取余运算。
6.如权利要求1-5任意一项所述的一种增强zigbee网络安全的加解密方法,其特征在于,步骤f中,对获得的明文数据封装成信息包供应用层调用。

说明书全文

一种增强zigbee网络安全的加解密方法

技术领域

[0001] 本发明涉及zigbee技术安全领域,具体涉及一种增强zigbee网络安全的加解密方法。

背景技术

[0002] zigbee是一种近距离、低速率、低功耗、低成本的无线网络技术,正是由于这些优点,基于zigbee标准的无线传感器网络的应用越来越广泛。但由于zigbee无线设备在存储能、计算能力及电源供电时间方面的局限性,不仅使得原来在有线环境下的许多安全方案和安全技术不能直接应用于zigbee网络环境中,而且对zigbee网络安全服务过程与算法提出了较高要求。目前,zigbee网络中常用的数据加密模式为128bit的AES算法。AES采用迭代型分组密码Rijndael算法,具有优秀的性能及抗攻击能力,在zigbee网络环境中有较好的加密/解密运算效率。
[0003] 随着物联网的高速发展,zigbee网络系统体现出存在的如数据窃听、篡改、伪造等安全威胁。研究发现,攻击者首先窃取zigbee网络节点发送的数据格式和内容,然后攻击通信节点或分配恶意节点伪装成合法节点进入网络来改变、丢弃或破坏数据包,最终致使整个zigbee网络瘫痪。典型的内部网络攻击包括Sinkhole攻击、Sybil攻击、Wormholes攻击、Flooding攻击、应答欺骗等。所以,对zigbee网络系统提出了更高的安全要求,特别是防止数据窃取方面。
[0004] 传统加密技术采用单一的AES加密,加密算法是公开的,且每一步操作都是可逆的,按照相反的顺序进行解密即可恢复明文。密钥固定时,相同数据加密后数据仍相同。其加解密流程参见附图1,在数据发送端对数据进行AES加密后形成密文进行传输,然后在数据接收端对密文采用AES解密算法解密,还原获得明文数据。
[0005] 为便于理解,下面对本发明中可能出现的技术术语进行释义:
[0006] 协调器(coordinator):每个zigbee网络只允许有一个zigbee协调器,协调器首先选择一个信道和网络标识(PAN ID),然后开始这个网络。因为协调器是整个网络的开始,它是整个网络的维护者同时还可以设计安全中心和执行其他动作,保持网络其他设备的通信。协调器通常使用串口方式和网关进行通信。
[0007] 路由器(router):路由器是一种支持关联的设备,能够实现其他节点的消息转发功能,同时具有数据采集功能。Zigbee的树形网络和Mesh网络可以有多个zigbee路由器设备,zigbee的星型网络不支持zigbee的路由器设备。
[0008] zigbee终端(End Device):Zigbee终端节点是具体执行数据采集传输的设备,不具有数据转发功能。
[0009] zigbee网络:ZigBee技术具有强大的组网能力,可以形成星型、树型和网状网,可以根据实际项目需要来选择合适的网络结构。
[0010] zigbee AF(Application Framework)层数据发送和接收:AF层发送的数据经过安全服务层加密处理后传输到网络层和MAC层进行发射和传输;目的节点接收到数据后由MAC层上传到网络层再经过安全服务层解密后传递到AF层,AF层接收到数据后封装成信息包发送给应用层处理和使用。

发明内容

[0011] 本发明所要解决的技术问题是:提出一种增强zigbee网络安全的加解密方法,解决传统加密方法根据固定密钥加密而存在被破解的险的问题。
[0012] 本发明解决其技术问题所采用的技术方案是:
[0013] 一种增强zigbee网络安全的加解密方法,包括以下步骤:
[0014] a.在数据发送端的zigbee应用程序框架AF层,对需要发送的数据与数据序列号进行运算操作,获得一层加密处理的AF层加密数据;
[0015] b.AF层加密数据被传输至安全服务层进行AES二层加密;
[0016] c.经过AES二层加密后的数据被传输到数据发送端的网络层和MAC层进行数据发送;
[0017] d.数据接收端接收到数据后,判断目的地址是否为自身节点,若不是自身节点则进行转发,若是,则进行解密处理;
[0018] e.数据接收端在对数据进行解密处理时,将数据由MAC层传输到网络层,再传输到安全服务层进行AES解密;
[0019] f.在安全服务层进行AES解密后的数据传输至AF层,在AF层对数据与数据帧序列号进行与步骤a中的运算操作相对应的反运算操作,获得明文数据。
[0020] 作为进一步优化,所述数据接收端为zigbee协调器或zigbee路由器。
[0021] 作为进一步优化,所述数据发送端为zigbee终端传感器。
[0022] 作为进一步优化,步骤a中,所述对需要发送的数据与数据帧序列号进行运算操作,具体包括:
[0023] 对需要发送的全部数据与数据帧序列号进行运算操作;
[0024] 或者,对需要发送的部分数据与数据帧序列号进行运算操作。
[0025] 作为进一步优化,所述运算操作为:异或运算或者加、减、乘、除或者取余运算。
[0026] 作为进一步优化,步骤f中,对获得的明文数据封装成信息包供应用层调用。
[0027] 本发明的有益效果是:
[0028] 对传输的数据进行双层加密,即在AF层进行一次与数据序列号相关的一层加密,在安全服务层进行AES二层加密,双层加密后由于数据帧序列号是连续变化的,所以即使相同数据经过加密后得到的数据也不相同,进一步增强了zigbee网络的安全性。因为序列号是当前数据帧内已经具有的,无需额外添加,所以双层加密不增加zigbee设备的无线传输负荷。

附图说明

[0029] 图1为传统技术中zigbee网络的加解密方法流程图
[0030] 图2为本发明实施例中增强zigbee网络安全的加解密方法流程图。

具体实施方式

[0031] 本发明旨在提出一种增强zigbee网络安全的加密方法,解决传统加密方法根据固定密钥加密而存在被破解的风险的问题。
[0032] 在具体实施上,本发明中的加解密方案分为三部分:zigbee终端传感器数据采集、zigbee数据加密和发送、zigbee数据接收和解密。
[0033] 一、zigbee终端传感器数据采集:
[0034] zigbee终端传感器包括zigbee智慧家居传感器、zigbee智慧医疗传感器、zigbee智能工厂传感器等。包括但不限于磁传感器、烟雾传感器、燃气传感器、温湿度传感器、浸传感器、红外传感器、智能开关传感器、智能窗帘传感器、智能门传感器、zigbee智慧医疗和zigbee智能工厂用传感器等。zigbee终端传感器采集到数据后上传协调器或者上传给路由器转发至目的节点。
[0035] 二、zigbee数据加密和发送:
[0036] AF(Application Framework)层提供发送和接收数据的功能。它包括两种数据服务类型:键值对服务类型KVP(Key Value Pair)和报文服务类型MSG。KVP服务主要用于传输一些较为简单的变量格式。由于zigbee的很多应用领域中的消息较为复杂,并不适用于KVP格式,因此ZigBee协议规范定义了MSG服务类型。MSG服务对数据格式和内容不作要求,适合任何格式的数据传输,可以用于传送数据量大的消息。目前zigbee技术普遍采用MSG报文数据服务类型进行数据传输。
[0037] Zigbee终端需要发送的数据在AF层和当前MSG服务序列号进行异或等处理进行一层加密,加密后的数据赋值给APS(应用支持子层)层原语,然后传递到安全服务层进行AES二层加密,加密后的数据传输到网络层和MAC层进行数据发送。
[0038] 三、zigbee数据接收和解密:
[0039] 协调器或目的地址为本身节点的路由器接收到终端发送的数据,由MAC层上传到网络层,网络层再上传到安全服务层,在安全服务层对加密的数据进行AES解密,AES解密后的数据上传到AF层,AF层数据接收函数内把经过AF层加密的数据项和MSG数据包的序列号进行异或等操作实现二层数据解密。二层解密后的数据即为明文,封装成信息包供应用层直接调用。
[0040] 下面结合附图及实施例对本发明的方案作进一步的描述:
[0041] 如图1所示,本实施例中的增强zigbee网络安全的加密方法包括以下步骤:
[0042] 1.在数据发送端的zigbee应用程序框架AF层,对需要发送的数据与数据帧序列号进行运算操作,获得一层加密处理的AF层加密数据;
[0043] 在本步骤中,AF层数据加密可以是对全部发送的数据进行加密,也可以只对部分发送的数据进行加密。加密方式包含发送数据和序列号异或操作加密,但不限于此种加密方式,也可以采用和序列号进行加、减、乘、除、取余等其它方式加密。
[0044] 如果zigbee网络为星型网络,则AF层可对发送数据全部或部分加密;如果zigbee网络为含有路由器的树型网络或mesh网络,则AF层不对发送数据的目的地址数据项进行加密。
[0045] 2.AF层加密数据被传输至安全服务层进行AES二层加密;
[0046] 3.经过AES二层加密后的数据被传输到数据发送端的网络层和MAC层进行数据发送;
[0047] 本步骤中,数据发送的目的地址为zigbee协调器或者某个目的zigbee路由器。
[0048] 4.数据接收端接收到数据后,判断目的地址是否为自身节点,若不是自身节点则进行转发,若是,则进行解密处理;
[0049] 5.数据接收端在对数据进行解密处理时,将数据由MAC层传输到网络层,再传输到安全服务层进行AES解密,即一层解密;
[0050] 6.在安全服务层进行AES解密后的数据传输至AF层进行二层解密,在AF层对数据与数据帧序列号进行与步骤1中的运算操作相对应的反运算操作,获得明文数据。
[0051] 本步骤中,AF层进行二层解密的数据项和AF层加密的数据项相同,即AF层接收函数内只对AF层经过加密的数据项进行二层解密,不对没有经过AF层加密的数据项进行解密处理。二层解密后的数据为明文,封装成信息包供应用层直接调用。
QQ群二维码
意见反馈