曹华珍,韦 斌,隋 宇,陈亚彬
(广东电网公司规划研究中心,广东 广州 510600)
物联网时代的到来,在给人们带来信息红利的同时,其潜在的安全问题也逐渐暴露。特别在工业、医疗、军事等信息交互背景下,一些敏感信息需要通过加密处理后才能利用网络传输。但基于物联网背景下的信息传输因其数据量庞大,数据信息复杂,传统加密方式在该背景下存在安全性能不足、适配性能差等问题,已逐渐无法满足加密需求。伴随着物联网技术的兴起和普及,工业物联网中的数据安全问题正引起社会各界人士的关注。纵观国内外研究成果,利用密码技术解决数据安全问题是一种有效的技术途径,其中基于混沌映射的数据加密更是研究热点之一。文献[1]提出了一种基于忆阻器神经网络和改进Logistic映射的图像加密算法,加强其密码复杂程度。文献[2]采用双曲正弦函数忆阻器作为正反馈,设计了一种吸引子具有四翼的四维混沌模型。文献[3]提出了一种忆阻时滞混沌系统并分析了该系统的基本动力学特性,基于该混沌序列设计了一种双重扩散的图像加解密算法,有效减少明文和密文间的联系。上述文献的加密方式在物联网的信息交互模式下存在一定局限性。而且大多数的算法都只停留在软件仿真的步骤,缺乏硬件实现的验证,从而制约了从理论走向实际的发展。
针对物联网技术中存在的信息安全问题,设计一种切实可用的混沌加密算法具有重要的研究意义和应用价值。同时,混沌动力系统具有不周期、不发散、不收敛的特性。由于混沌系统所具备的类随机性、对初始值极度敏感等优良特性与密码学的基本要求十分契合,因此利用其生成的高随机性序列作为密钥序列,通过散列、置乱、掩膜、扩散等手段对数据进行加密,从而提高信息的安全性,达到了动态加密的效果,并且通信安全也得到了保障。
在分析现有算法不足的基础上, 提出了一种基于忆阻超混沌系统的加密算法,并进行了硬件验证。首先,对明文进行原始信息初处理,其中包括RGB分解、比特平面分解,从而得到灰度图,再转为二值化矩阵进行存储。接着,向忆阻器输入预先设定好的初值,生成一段混沌序列,选取部分序列用作加密密钥。然后,对密钥进行归一化处理,利用忆阻超混沌系统得到的序列对处理后的明文进行按位异或、置乱、掩膜和扩散等加密操作。最后,为了改良单一混沌映射混沌动力学特性不足,密钥空间较小的问题,引入明文关联生成强随机性的扩散矩阵,将其用于异或扩散过程。该明文关联方案具有较强的鲁棒性和更加灵活的变化机制。该算法已在物联网平台上成功实现且加密效果良好。算法的提出和硬件验证的完成,有望为未来物联网技术的数据安全问题提供一种新思路,在物联网的信息安全优化方面具有一定参考价值。
忆阻器作为第四种无源基本电路元件,能够实现0、1信息储存功能,具有速度快、功耗低、易集成、结构简单等优势。该元件既能满足下一代高密度信息存储和高性能计算对通用性电子存储器的性能需求,又能实现非易失性状态逻辑运算和类脑神经形态计算的功能。此外,忆阻器的输入输出关系是非线性的,其对流经的电流具有记忆能力。因此,利用其构建的忆阻混沌系统有着与一般混沌系统不同的动力学特性。除了在电路参数方面表现出敏感性外,忆阻混沌系统还会随着忆阻器初始值的变化而变化。基于这些特性,利用忆阻混沌系统产生伪随机序列作为密钥,通过散列、置乱、掩膜、扩散等手段对数据进行加密。
采用的忆阻超混沌系统的无量纲方程为:
(1)
其中,,,,,为系统参数。其中为忆阻器相关参数。当参数=35,=-10,=95,=-4,=-1,=-3时,通过忆阻系统产生的超混沌吸引子相图如图1所示。
图1 基于忆阻系统的超混沌吸引子相图
超混沌加密算法总框见图2。
对原始信息进行初处理
对输入的明文进行初处理,具体处理步骤为:
将明文图像按照RGB三通道分解为3张子图,分别为、、,公式如下:
(2)
其中为明文图像,、、为分解后的三张子图像。
将3张子图、、分别进行8比特平面分解,最终得到24张子图,以为例,算法如下:
其中为明文图像,_为比特平面分解后图像,bitget为按位输出函数,bitshift为按位移位函数。
将24张子图以二值化矩阵的形式存储,公式如下:
_=reshape(_,,)
(3)
其中_为比特平面分解后图像,_为二值化矩阵图像,reshape为矩阵重组函数。
利用忆阻混沌生成用于掩膜、置乱、扩散的随机序列
本文使用的忆阻超混沌模型如下:
(4)
其中,,,,,为系统参数。其中是忆阻器相关参数。已知参数=35,=-10,=95,=-4,=-1,=-3时,系统处于混沌状态。将相关参数代入忆阻混沌系统,生成随机序列。为保证序列的随机性,舍弃前100位序列,并根据加密信息的长度计算相应的迭代次数。
图2 超混沌加密算法总框图
此外,密文中的部分序列将承担密钥作用,用于后续随机序列的生成,从而实现多轮加密。在循环迭代的过程中,需对密文中选取的序列进行混沌序列特性检测。检测步骤为:对密文中随机选取的序列进行放缩处理,并检测其是否满足密钥区间;利用满足条件的序列作为密钥生成新的忆阻混沌;利用李氏指数判断生成的混沌是否满足标准。其中计算映射的李氏指数的公式如下:
(5)
最终利用李氏指数符合标准的混沌系统生成新的伪随机序列,该序列将用于下一轮的加密。
异或掩膜
明文通过一个与其长宽相等的混沌矩阵进行位异或运算,公式如下:
=bitxor(_,)
(6)
其中bitxor为按位异或函数,_为二值化矩阵图像,即待加密信息,为由混沌产生的处于[0,255]混沌序列,为异或掩膜后的矩阵。
置乱
对进行置乱,算法如下:
for= 1:floor (*2)
=(())
(())=((*-+1)
((*-+1))=
end
其中是生成的一维向量,为步骤2生成的随机序列,floor为取整函数。
最后,将转化为*的矩阵,公式如下:
= reshape(,,)
(7)
扩散
生成用于扩散的伪随机序列,具体如下:
(8)
其中和分别是用作正向及反向扩散的伪随机序列,为原始随机序列,为数据处理后的伪随机序列,pow2是以2为基底的幂函数。
正向扩散算法如下:
反向扩散算法如下:
for=*-1:1:1
()=bitxtor (bitxtor ((-1),()),())
end
其中参数为正向扩散算法得到的中间变量,为密文。
将一维向量转化为*的矩阵形式储存并输出得到密文,公式如下:
=reshape(,,)
(9)
软件仿真实验使用忆阻器作为原混沌系统的非线性反馈产生新的忆阻混沌。原始图像、加密图像和解密图像如图3所示。
图3 原始图像加密与解密图像
NPCR (Unmber of Pixels Change Rate)和UACI (Unified Average Changing Intensity)是评估图像抗差分攻击能力的重要指标。NPCR指两幅图像对应位置的不同像素点占全部像素点的比例,UACI指两幅图像对应位置像素点的差值与最大差值的比值的平均值。计算公式如下:
(10)
其中和分别为两幅大小相同的图像,图像大小为×,Sign(·)为符号函数,如下式:
(11)
利用本算法对经典Lena图进行数次加密,并分析记录各次加密后NPCR和UACI的值,绘制密文图像的NPCR和UACI变化曲线如图4所示。
(a) NPCR变化曲线
由实验结果可知,本算法的NPCR值在99.75%浮动,符合理论期望值99.6%。UACI值在33.4%浮动,符合理论期望值33.5%。所以本算法能够较好地抵抗差分攻击。
密钥空间与密钥敏感度是加密算法安全性至关重要的指标。在遭受攻击的过程中,密钥空间的大小和密钥敏感度的强弱往往决定算法是否能够抵挡暴力破解。通过以下实验进一步证明算法的高效性,并且对算法进行测试分析。
实验结果如图5所示。当密钥失配10时,解密结果如图5(c)所示。当密钥完全匹配时,解密结果如图 5(d)所示。从上述结果可以看出,即使密钥存在微小错误,也会导致解密过程出现雪崩效应,无法准确还原明文。实验结果证明了算法具有良好的密钥敏感性。
图5 数据加密解密结果
算法选取系统的初始值作为超混沌系统的密钥参数,和为密钥控制参数。密钥空间可表示为:
KEY∈{,,,,,}
设置密钥参数类型为双精度数据类型。在参数精度为10的情况下,密钥空间为10≈2,密钥长度约为318 bit。基于密钥长度,将本文算法与其他算法进行比较,比较结果如表1所示。
表1 密钥长度对比
实验结果表明,本文算法具有较大的密钥空间,能够较好地抵御暴力攻击。
为分析加密算法的性能和验证该算法在物联网环境下的可行性,采用硬件验证的形式对算法和适用环境进行分析。
硬件验证采用的物联网环境为PZ6808L-F407开发板。该开发板微处理器模块的主控芯片使用基于ARM Crotex-M4的32位高性能STM32F407ZGT6作为系统核心。STM32具有功耗低、风险小、性能良好等优点,能较好地验证算法在物联网环境下的适配情况。
实验采用的PZ6808L-F407开发板支持以太网和无线Wi-Fi进行图像等信息的保密传输。实验设计的基于物联网设备的加密系统如图6所示。
(a)基于物联网设备产生的明文图像
实验结果表明,最大加密的图像大小为320*480,其加密速率为1.5 MB/s,具有较高的加密效率。同时实验还测试了320*240大小图像的实验效果,数据对比如表2所示。相比于320*480大小的图像,该系统在加密 320*240大小的图像时,加密效率更高。
表2 不同图像大小的加密速率对比
当传输图像质量更高时,图像数据量也就越大。此时,对于ARM处理器的运算资源来说,执行加解密处理图像所消耗的时间过长,这将导致系统加密效率降低。今后可以在此基础上优化算法压缩数据或采用性能更好地开发板实现混沌加解密模块,以便更好的进行硬件验证。
此加密系统的硬件实现,有望为解决传统嵌入式设备无线网络接入场景中无线设备易被抓包破解的问题提供帮助。此硬件验证的完成,说明了混沌加密系统在物联网中潜在的可行性,有望为提升物联网的通信安全提供一种新方法。
针对工业物联网中可能存在的安全问题,提出了一种基于忆阻超混沌系统的安全增强算法,并在物联网平台验证其可行性。向忆阻器输入预先设定好的初值,得到一段混沌序列,选取部分序列用作加密密钥。然后对密钥进行归一化处理,利用忆阻超混沌系统得到的序列对处理后的明文进行按位异或,继而进行置乱、掩膜和扩散等加密操作,得到密文;此时再将得到的密文进行混沌序列特性测试,即首先对随机密文序列进行放缩处理,判断是否在初值区间,如是,则用于生成忆阻混沌;检验忆阻混沌的李氏指数是否符合标准,若通过检验,则再次用于充当加密密钥,不断循环迭代直到加密完成。实验数据表明,本文提出的算法在具备高初值敏感性的同时,还具有密钥空间大、抗差分攻击能力强等特点。该算法在物联网平台的实现说明:混沌加密算法与物联网相结合的想法和模式具有可行性,将有望优化传统物联网信息交互的安全漏洞,为构建更好的工业物联网系统提供帮助。