基于二维超混沌与三维混沌复合的图像加密算法

2018-11-21 03:39吴贻峰缑新科
电光与控制 2018年11期
关键词:明文加密算法密文

吴贻峰, 缑新科

(兰州理工大学电气工程与信息工程学院,兰州 730050)

0 引言

随着软硬件技术的快速发展与革新,数字化信息传输技术的应用也变得越来越广泛。图像因其具有快捷方便、信息量大等特点,在地质、气象、航空航天等领域均有广泛的应用,这也使得对信息源的安全保护变得尤为重要[1]。由于传统的以AES为代表的信息加密系统, 加密效率低,难以满足当前的需求,而混沌具有对初始 条件的高度敏感性、遍历性、混合性、非周期性等特点,在处理大数据量信息时具有独特的优势,因此基于混沌的图像加密得到了越来越多研究学者的重视[2-4]。

近年来,大量的图像加密算法被提出,香农提出的混淆扩散机制在图像加密算法中得到了成功的应用和发展。很多研究人员提出的混沌加密算法,性能优异、安全性高,但是也存在一些不足。文献[5]提出的超混沌加密算法,优化了像素置乱和扩散过程,鲁棒性较好,但是加密速率并不理想,即使是256×256的8位图像,也需要接近1 s的时间,实时性不佳;文献[6]提出的新型置换和替代加密算法,将像素值扩散矢量和置乱矢量耦合,增加了加密系统的破解难度,但其使用的是一维Logistic映射,拟平凡密钥存在,安全性不高;文献[7]提出的像素位置比特位双重置乱算法,加强了明文与密钥的关系,提高了系统的安全性,但只使用了Kent映射,密钥空间受到限制;文献[8]提出的基于二维超混沌加密算法以及文献[9]提出的先局部再整体的置乱方式,方法新颖,仅通过两轮加密就可以得到较好的效果。

本文对文献[7]的置乱方式做出一些改进,加强了明文和混沌系统初始值的关系,以及混沌序列的生成。由于当前计算机精度有限,混沌系统生成的伪随机序列会有短周期性,因此本文采用了二维超混沌与三维混沌复合的混沌加密,一方面可抵抗短周期性,另一方面增大了密钥空间,同时提高了密钥对明文的敏感性。经过测试,该算法安全性较高,抗攻击能力强。

1 混沌系统

1.1 超混沌系统

本文选用的是二维超混沌系统,即Kawakami超混沌系统[10],系统描述如下

(1)

当系统的控制参数c1为0.10或0.15,d=1.60时(业内经验值),该系统处于超混沌状态,其相轨图如图1a所示。图1b为Logistic映射的分叉图,它的系统方程为xk+1=μxk(1-xk),其中,xk∈(0,1),0<μ≤4。观察图1a可发现,超混沌系统的动力学特性比Logistic等混沌系统要更加随机、复杂且相空间大,所以,将其应用在加密系统中可有效提升加密性能。

1.2 吕混沌系统

本文选用的另一个混沌系统是三维吕系统[11],它是由吕金虎及其导师提出的处于Lorenz混沌系统和Chen混沌系统之间的过渡系统,系统方程为

(2)

由于该系统是连续混沌系统,在应用的过程中需要将其离散化。本文采用四阶Rung-Kutta算法对吕系统进行离散化处理。

其中:a,c2,b均为控制参数,当a=36,b=3,c2=20时(业内经验值),系统呈现混沌状态,设定(x,y,z)的起始迭代值分别为(12,12,12)(根据相空间范围选取),并设定步长h=0.001(业内实验值),仿真实验得到其相轨图如图2所示。由图2可见x∈(0,40),y∈(-40,40),z∈(-30,30),说明了多维混沌系统的相空间大,拓扑结构复杂,将其应用于加密系统能够有效提高系统的安全性[12]。

图1 系统映射图Fig.1 System mapping

图2 吕系统相轨图Fig.2 The phase portrait of the LV system

2 加密算法设计

基于混沌的图像加密算法主要由像素置换和灰度扩散两部分组成。假设加密的图像尺寸为M行N列,即大小为M×N,记第i行第j列的像素值为pi,j。

2.1 像素置换

像素置换即通过特定操作打乱图像的像素矩阵,改变其原有的排列方式,进而减弱图像内部像素之间的相关性,使图像呈现出类似噪声的状态,视觉上无法辨认。置换算法设计如下。

1) 通过明文像素值控制产生Kawakami系统的初始值X0和Y0,计算明文图像的像素值之和,前半部分之和记为S1,后半部分之和记为S2,然后通过式(3)进行归一化处理,超混沌系统初始值产生完成。

(3)

2) 计算混沌系统的预迭代次数N0为

N0=1000+mod(S2,500)>。

(4)

(5)

对两组序列进行改造,则两组混沌序列均属于[0,255]。

4) 同时选取上述两组混沌序列的第K1,K2,K3次迭代值,然后通过

(6)

计算产生吕混沌系统初始值。式中:K1,K2,K3的值可自由设定,但必须满足K1,K2,K3均属于[1,M×N],且w1+w2=1;PK1,PK2,PK3为明文图像的第K1,K2,K3个像素值。

5) 通过

i′=i+mod((Xi+Yi),M×N-i)

(7)

Pi′=Pi>

(8)

进行置换操作,并记生成的置换图像序列为Si(i=0,1,2,…,M×N-1)。

2.2 像素替换和扩散

1) 设定吕混沌系统的控制参数a,b,c2,初始值Xbgn,Ybgn,Zbgn,先迭代N0次,再迭代M×N次,得到3组未经处理的混沌序列,然后根据

(9)

t=mod(Pi,3)

(10)

完成对混沌序列的改造和重新排列,记最终形成的3组混沌序列为Lxi,Lyi,Lzi(i=0,1,2,…,M×N-1)。

如果t=0,则分别将(bi 1,bi 2,bi 3)放入(Lxi,Lyi,Lzi)中;如果t=1,则分别将(bi 1,bi 2,bi 3)放入(Lyi,Lzi,Lxi);如果t=2,则分别将(bi 1,bi 2,bi 3)放入(Lzi,Lyi,Lxi)中,重复此过程,完成对3组混沌序列的构造。

2)记最终密文序列为Ci(i=0,1,2,…,M×N-1),中间密文序列为Mi(i=0,1,2,…,M×N-1)。根据

Mi=Lyi⊕mod((Lxi+Si),256)⊕Mi-1

(11)

Ci=Mi⊕mod((Lzi+Pi),256)⊕Ci-1>。

(12)

完成像素替换和扩散。

当加密第一个像素时,取Mi-1=M0,Ci-1=C0,M0,C0自定义,且取值范围均为[0,255]。

重复上述过程T次,完成整个加密过程。

2.3 解密

解密即将密文图像恢复成原图的过程,与加密过程相反,需先进行替换和扩散逆操作,再进行置换逆操作,最后才能得到原始像素值,恢复原图。

1) 通过

Mi=Ci⊕(Lzi+Pi)⊕Ci-1

(13)

Si=Mi⊕Lyi⊕Mi-1+256-Lxi>

(14)

得到Si。

2) 通过式(7)、式(8)得到原始像素。值得注意的是,解密过程是加密过程的逆序,不仅是算法流程,而且像素处理也需要从图像的最后一个像素开始。

3 图像加密效果评价指标

3.1 灰度直方图

一个安全加密系统必须能够抵抗基于统计分析的攻击。灰度直方图是反映图像统计信息的有力工具,加密后图像的灰度直方图分布越均匀则加密效果越好。

3.2 信息熵

信息是用来消除随机、不确定的东西,信息熵则是对信息的一种度量方式,越大则随机性越好。对于任意的随机信号m,其信息熵定义如式(15)所示,单位bit,即

(15)

式中:N表示图像像素特征的总个数,这里N=28,即256;p(mi)指mi在信息源中出现的概率。信息源随机性越好,则H(m)的值越接近lbn。

3.3 相邻像素相关性

相邻像素相关性反映了图像中相邻灰度值之间的关联强度,加密的目的便是弱化其相关程度,主要包括水平、垂直和对角线3个方向。

相关性系数的算式为

(16)

(17)

式中:xi,yi为相邻的灰度值;N为相邻像素对的对数;E(x)为像素均值;D(x)为方差;cov(x,y)为协方差。

3.4 明文敏感性

差分分析虽然对数据量的要求比较高,但却是一种行之有效的攻击方法。破解思路是对特定区域像素值做出细微改变,分析改变前后密文之间的关系,以期望得到与密码相关的有用信息。为了抵抗此类攻击,需要密码系统能够在明文即使只变化一个像素值时也能产生雪崩效应,即算法的抗差分能力要强,一般通过像素变化率(NPCR)和灰度平均变化强度(UACI)来评判。它们的理想值分别为99.609 4%和33.463 5%。其计算方法为

(18)

(19)

式中,C(i,j)和C′(i,j)为两幅只有一个像素值不同的明文图像,当C(i,j)=C′(i,j)时,D(i,j)=0,反之D(i,j)=1。

3.5 密钥分析

任何安全可靠的加密算法,密钥都需要具备大空间和强敏感性的特点。密钥空间的大小能够增大穷举法攻击的难度;强敏感性是对密钥唯一性的衡量。只有两个特点都具备,才能保证加密系统的安全性。

4 实验结果与分析

实验图像为8位256色的Baboon图像,其像素大小为512×512。参数设置如下:式(1)中,c1=0.10,d=1.60;式(2)中,a=36,b=3,c2=20;其他:(K1,K2,K3,M0,C0,T)= (2017,2137,2862,142,132,2),参数可自由设置,满足第3章提出的限制条件即可。图3中给出了Baboon置换效果和最终加密效果。由图3c可以发现密文图像在视觉上呈现杂乱无章的状态,类似噪声,无法辨识。

图3 加密效果图Fig.3 Encryption effect

4.1 抗统计性能分析

图4分别给出了 Baboon图像加密前后的灰度直方图。从图中可观察发现,明文在加密前像素值分布极不平坦,而加密后图像灰度值基本上在[0,255]内呈现等概率分布,说明明文的统计特性遭到了严重破坏,该加密算法能够有效抵抗统计分析。

图4 灰度直方图Fig.4 Gray scale histogram

4.2 信息熵分析

对于本文实验中的8位256色图像,即N=256,P(mi)=1/256,根据式(15)可以计算其信息熵理想值为8。表1数据说明算法经过较少轮次的加密,就能得到理想的信息熵值,即加密算法能够快速有效地提升信息源的随机性;同时,从表2的对比分析中可以发现,本文算法的信息熵略高于其他几个算法,更加接近理想值,因此本文算法的性能更佳。

表1 图像信息熵

表2 信息熵对比

4.3 相关性分析

密文相邻像素之间的相关性越低,则加密图像越安全。实验中随机采集了明密文在水平、垂直和对角线3个方向上的5000对相邻像素值,表3是根据式(16)计算得到的3个方向的ρxy,反映出未加密图像的相邻像素高度相关,而密文图像则降低到了10-2以下,相关性极低。图5给出了明密文3个方向上的相邻像素相关性图,可以发现明文相邻像素之间大致呈现线性相关,而密文相邻像素则呈离散分布状态。表4中的对比分析表明了本文算法的安全性比一般算法要好。

表3 相关性系数

图5 相邻像素相关性系数Fig.5 Correlation of two adjacent pixels of plaintext and ciphertext

表4 相关性系数对比

4.4 抗差分性能分析

NPCR和UACI揭示了算法对明文的敏感性,表5数据说明算法在明文即使只发生微小变化时,也能够快速有效地影响全部密文,使整体密文数据均产生巨大变化。对比文献[2]、文献[6]、文献[9],从表6可看出本文算法对明文的敏感性更强,即算法具有较强的抗差分攻击能力,密文安全能够得到有效保障[12]。

表5 NPCR和UACI

表6 NPCR和UACI的对比

4.5 密钥分析

4.5.1 密钥空间分析

根据算法设计密钥可设定为:Kawakami系统(c1,d),吕系统(a,b,c2)以及(K1,K2,K3,M0,C0,T)等,密钥空间约为10220以上,能够有效抵抗攻击者类似穷举的攻击[12]。

4.5.2 密钥敏感性分析

一个安全的加密系统需要对明文和密钥都具备强敏感性。实验中在吕混沌系统的控制参数c2分别为20和20+10-14,其他密钥保持一致的情况下,加解密256×256的 Baboon图像,得到图6b的结果,解密图像完全混乱,一片噪点。设定加解密参数完全一致时才能得到图6a的原始图像。

实验中一并测试了上述密钥加密相同明文图像,得到密文之间的NPCR和UACI。本文算法的上述值分别为0.996 4和0.334 3,因此本文算法对密钥是否准确极其敏感,微小差别也不能容忍,安全性较高。

图6 解密图Fig.6 Decryption images

4.6 算法效率

实验设备为台式电脑。CPU配置为AMD A8-6500 4.00 GiB 3.50 GHz;软件为Visual Studio 2010;编程语言为C + +与Halcon混合编程。为了得到较为准确的数据,实验中对不同的图像(像素大小均为256×256)进行加密,并与该领域的其他算法进行对比分析。从表7中可以发现本文算法效率得到一定改善,但并非特别显著,主要原因在于选择的混沌系统,超混沌和多维混沌在迭代速率上稍慢,在算法总体耗时中占了较大比例。因此,选择合适的混沌系统对加密算法影响很大,不同混沌系统特点不一,利用其优点避其缺点,才能设计出更加安全高效的加密算法。

表7 加密时间对比

4.7 抗噪声分析

图像在传输过程中极易受到噪声污染,为了检测算法的抗噪能力,在加密过程中对face(256×256)图片加入了高斯噪声(标准差为20)和椒盐噪声(15%),然后进行解密,解密结果如图7所示。从图中可以发现,即使在传输过程中图像受到了污染,也能够恢复图像的整体信息,不影响其整体感知,因此该算法具有一定的抗噪声能力。

图7 加入噪声与无噪声解密图Fig.7 Decryption of noise-added image and original image

5 结论

本文提出的Kawakami超混沌与三维吕混沌复合的图像加密算法,置换过程相比传统算法做出了较大改进,参数设置更加随机和复杂,增强了明密文之间、置换和替换之间的相互影响强度,使得算法的扩散效应更好。实验仿真表明,本文提出的复合算法充分利用两种混沌系统的优点,也一定程度地规避其缺点,使其能够有效地抵抗各种攻击,安全性能够得到较好的保障,但是在相关性和加密效率上改进并不显著,算法设计还可进一步优化。总体来说,本文设计的算法比大部分的同类算法性能要优异,具有较好的应用前景和使用价值。

猜你喜欢
明文加密算法密文
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
奇怪的处罚
一种基于密文分析的密码识别技术*
奇怪的处罚
基于小波变换和混沌映射的图像加密算法
四部委明文反对垃圾焚烧低价竞争
云存储中支持词频和用户喜好的密文模糊检索
Hill加密算法的改进
对称加密算法RC5的架构设计与电路实现