基于IEEE802-15-4标准的安全服务协处理器的实现方法技术

技术编号:21517416 阅读:21 留言:0更新日期:2019-07-03 09:59
本发明专利技术涉及基于IEEE802‑15‑4标准的安全服务协处理器的实现方法,通过硬件自动地对报文进行加解密和认证操作,实现数据保密性和数据真实性安全服务,包括以下步骤:将安全服务协处理器自顶向下分为CCM*层、Block Cipher Mode层和AES‑128层;所述CCM*层用于实现CCM*模式;对原始报文进行加密及认证,或者对接收到的报文进行解密及校验;所述Block Cipher Mode层用于实现分组密码工作模式;将CCM*层输出的数据块经加密或解密操作后返回至CCM*层;所述AES‑128层用于实现AES加密和解密;将Block Cipher Mode层输出的128‑bit数据经加密或解密操作后返回至Block Cipher Mode层。本发明专利技术既能单独实现多种分组密法算法工作模式,还能够实现IEEE 802.15.4标准中CCM*模式的加解密功能和认证功能,能够满足无线传感器网络的信息安全功能和需求。解决了传统上控制过程复杂、处理器工作负载繁重的弊端。

Implementation of Security Service Coprocessor Based on IEEE802-15-4 Standard

【技术实现步骤摘要】
基于IEEE802-15-4标准的安全服务协处理器的实现方法
本专利技术属于加解密
,具体说是一种基于IEEE802.15.4标准的安全服务协处理器的实现方法。
技术介绍
IEEE802.15.4标准是物联网中最受欢迎、应用最广泛、最核心的技术。IEEE802.15.4标准的媒体访问控制子层(MACsublayer)提供了安全服务和安全模式。在安全模式下,设备可能会根据不同的安全级别提供两种安全服务:数据保密性和数据真实性。数据保密性是使用对称密码算法进行加密的,使用相同的密钥在报文源加密明文和在报文目的地解密密文。数据真实性,也被称为数据的完整性,该服务能使接收设备通过附加到报文中的消息完整性代码(MIC)来检测该报文是否受到了没有正确加密密钥的某方的篡改。安全级别1~3级提供了数据真实性服务和长度分别为32、64或128位的消息完整性代码。安全级别4级提供了数据保密性服务。安全级别5~7级提供了数据保密性和数据真实性服务(消息完整性代码分别为32、64或128位)。IEEE802.15.4安全服务是基于CCM*模式生成一系列的安全机制。CCM*模式是CCM模式的扩展,而CCM模式是结合了分组密码算法工作模式(CTR和CBC-MAC)而衍生出来的安全模式,这套安全机制的主要优点是所有安全级别都只采用了一种加密算法,即AES-128加密算法(128位数据分组长度和128位密钥长度的AES加密算法)。特别是,通过巧妙地重复利用AES算法,CCM*模式能使一个简单的算法在一个很小的实现中提供更高的安全服务。分组密码又称块密码算法,是一种对称密码算法,将明文划分成固定长度的分组进行加密。分组密码算法工作模式是分组密码算法的使用方式,主要包括电码本模式(ECB)、密码分组链接模式(CBC)、密码反馈模式(CFB)、输出反馈模式(OFB)、计数器模式(CTR)等。AES(高级加密标准),是由NIST(美国国家标准与技术研究院)于2001年11月26日发布于FIPSPUB197,并在2002年5月26日成为有效的标准。AES加密算法,又称为Rijndael加密算法,该算法为比利时密码学家JoanDaemen和VincentRijmen所设计,这个标准用来替代原先的DES,己经被多方分析且广为全世界所使用。AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位(16字节)分组加密和解密数据。IEEE802.15.4采用固定的128位密钥,记为AES-128。不论对于AES加密算法还是解密算法,都是使用轮变换的操作。轮变换操作次数与密钥的位数有关,AES-128轮数为10轮。IEEE802.15.4协议中只用到了AES-128加密算法,明文首先进行一个密钥加的操作,然后进行10次轮变换操作。轮变换包括4个操作:字节置换、行换位、列混合和密钥加。传统无线网络节点所采用的安全机制存在一个弊端,在硬件上没有针对无线网络特性的安全服务协处理器,对于硬件资源和计算能力有限的无线网络节点,只能依靠运行在通用的嵌入式处理器上的软件程序,无法实现计算复杂度高、计算资源消耗较大的安全协议。即在一次加解密或身份认证流程中,处理器必须进行多次干预,既使控制过程复杂化,也增加了处理器的工作负载。
技术实现思路
本专利技术提出了一种基于IEEE802.15.4标准的安全服务协处理器的实现方法,以克服上述技术不足。本专利技术采用如下技术方案:基于IEEE802.15.4标准的安全服务协处理器的实现方法,通过硬件自动地对报文进行加解密和认证操作,实现数据保密性和数据真实性安全服务,包括以下步骤:将安全服务协处理器自顶向下分为CCM*层、BlockCipherMode层和AES-128层;所述CCM*层用于实现CCM*模式;对原始报文进行加密及认证,或者对接收到的报文进行解密及校验;通过对BlockCipherMode层的功能调用,完成本层的功能;所述BlockCipherMode层用于实现分组密码工作模式;将CCM*层输出的数据块经加密或解密操作后返回至CCM*层;通过对AES-128层的功能调用,完成本层的功能;所述AES-128层用于实现AES加密和解密;将BlockCipherMode层输出的128-bit数据经加密或解密操作后返回至BlockCipherMode层。所述CCM*层、BlockCipherMode层和AES-128层均可以通过安全服务协处理器的控制,独立地与外部处理器建立相应的数据通路,并实现相应的层次功能。所述CCM*层为CCM*模块,其实现包括以下步骤:根据需求设置CCM*模块的操作模式;根据CCM*模块的操作模式,进入工作状态。所述进入工作状态包括以下步骤:当操作模式设定为加密及认证模式时,报文依次进入产生MIC、加密MIC和加密数据块状态;而每个状态都自动进入BlockCipherMode模块,最终得到加密后的报文输出;当操作模式设定为解密及认证校验时,报文依次进入解密MIC、解密数据块和校验MIC状态,而每个状态都自动进入BlockCipherMode模块,最终得到解密后的报文输出。所述BlockCipherMode模块的实现包括以下步骤:1)设置加密或解密操作类型;2)设置工作模式及分组输入的长度;3)加载密钥和初始化向量并设定反馈缓存变量;4)加载数据输入变量并生成AES-128加密或解密操作的输入x;5)将待加密或解密的输入x进行AES-128加密或解密操作,生成输出y;6)更新反馈缓存变量值;当反馈循环计数值小于设定次数时,返回步骤4),否则执行下一步骤;7)根据操作类型和工作模式生成数据输出变量text_o。所述生成输出y后,当工作模式为CFB、OFB和CTR时,生成位选取变量j_z和生成密/明文分组长度变量j_blk_o。所述生成输出y后,当工作模式为CBC时,生成密/明文分组变量blk_o。所述更新反馈缓存变量值后,当工作模式为CFB、OFB和CTR时,生成分组输出变量blk_o_r。本专利技术具有以下有益效果及优点:1、本专利技术能够完全由硬件自动实现以下功能:1)独立实现IEEE802.15.4标准中要求的数据保密性和数据真实性安全服务;2)独立实现分组密法算法的多种工作模式;3)独立实现AES加密和解密;2、本专利技术解决了传统上控制过程复杂、处理器工作负载繁重的弊端。附图说明图1为安全服务协处理器的设计层次示意图;图2为CCM*模块工作状态示意图;图3为BlockCipherMode模块的数据流程示意图;图4为AES-128加密操作的结构示意图;图5为AES-128解密操作的结构示意图。具体实施方式下面结合附图对本专利技术做进一步的详细说明。安全服务协处理器的设计自顶向下分为3个层次,如图1所示:1、CCM*层:即CCM*模块,实现CCM*模式;1)实现IEEEStd802.15.4标准中要求的数据保密性和数据真实性安全服务;2)提供数据链路层及应用层的MIC(消息完整性代码)生成和检查,数据负载的加密和解密功能。2、BlockCipherMode层:即BlockCipherMode模块,实现分组密码工作模式;3、AES-128层:即AES-128模块,实现AES加本文档来自技高网
...

【技术保护点】
1.基于IEEE802‑15‑4标准的安全服务协处理器的实现方法,其特征在于通过硬件自动地对报文进行加解密和认证操作,实现数据保密性和数据真实性安全服务,包括以下步骤:将安全服务协处理器自顶向下分为CCM*层、Block Cipher Mode层和AES‑128层;所述CCM*层用于实现CCM*模式;通过对Block Cipher Mode层的功能调用,实现对原始报文进行加密及认证,或者对接收到的报文进行解密及校验;所述Block Cipher Mode层用于实现分组密码工作模式;通过对AES‑128层的功能调用,将CCM*层输出的数据块经加密或解密操作后返回至CCM*层;所述AES‑128层用于实现AES加密和解密;将Block Cipher Mode层输出的128‑bit数据经加密或解密操作后返回至Block Cipher Mode层。

【技术特征摘要】
1.基于IEEE802-15-4标准的安全服务协处理器的实现方法,其特征在于通过硬件自动地对报文进行加解密和认证操作,实现数据保密性和数据真实性安全服务,包括以下步骤:将安全服务协处理器自顶向下分为CCM*层、BlockCipherMode层和AES-128层;所述CCM*层用于实现CCM*模式;通过对BlockCipherMode层的功能调用,实现对原始报文进行加密及认证,或者对接收到的报文进行解密及校验;所述BlockCipherMode层用于实现分组密码工作模式;通过对AES-128层的功能调用,将CCM*层输出的数据块经加密或解密操作后返回至CCM*层;所述AES-128层用于实现AES加密和解密;将BlockCipherMode层输出的128-bit数据经加密或解密操作后返回至BlockCipherMode层。2.根据权利要求1所述的基于IEEE802-15-4标准的安全服务协处理器的实现方法,其特征在于所述CCM*层为CCM*模块,其实现包括以下步骤:根据需求设置CCM*模块的操作模式;根据CCM*模块的操作模式,进入工作状态。3.根据权利要求1所述的基于IEEE802-15-4标准的安全服务协处理器的实现方法,其特征在于所述进入工作状态包括以下步骤:当操作模式设定为加密及认证模式时,报文依次进入产生MIC、加密MIC和加密数据块状态;而每个状态都自动进入BlockCipherMode模块,最终得到加密后的报文输出;当操作模式设定为解密及认证校验时,报文依次进入解密MIC、解密数据块和校验MIC状态,而每个状态都自动进入BlockCipherMode模块...

【专利技术属性】
技术研发人员:董策于海斌杨志家谢闯王剑段茂强张志鹏张超
申请(专利权)人:中国科学院沈阳自动化研究所
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1