APP下载

基于像素交叉循环移位与混沌映射的图像加密

2018-03-28

系统仿真技术 2018年1期
关键词:明文加密算法密文

(陕西交通职业技术学院 轨道交通学院,陕西 西安 710018)

随着世界文化交流范围的不断扩大,因特网已成为当前人们实现异地沟通的必备介质,其中数字图像作为一种较为直观的交流载体,给人们的生活带来极大便利[1]。然而,图像因其本身含有丰富的内容信息,在当前未知授权的网络中传输时,易遭受到外部攻击,使其信息内容被窃取,给人们带来了巨大的经济损失[2]。因此,如何确保图像信息安全传输已成为当前的研究热点[3]。传统的数据加密机制,如数据加密标准(DES)、国际数据加密算法(IDEA)以及公钥加密算法(RSA)等,忽略了图像的大数据容量与高冗余度等特点,难以适用于数字图像的安全加密[4]。为了防止图像在网络中传输时受到外来攻击,学者们提出了图像加密技术。王帅等[5]为了提高加密技术的抗明文攻击能力,提出了多混沌系统图像加密方法。构造置乱-扩散的加密机构,并利用Logistic映射及Kent映射来产生控制参数,从而给出了与明文相关的多轮加密策略。仿真数据表明,该算法具有较高的安全性与抵御明文攻击的能力。徐亚等[6]为了提高加密算法的安全性,设计了基于Arnold映射的分块双层自适应扩散图像加密算法。首先,利用Logistic映射、Tent映射和Sine映射组合成3种新一维混沌映射;然后,通过迭代组合混沌映射来获取随机序列,并对图像完成混淆;最后,利用正反联合映射将明文图像矩阵中随机位置像素值存入初始加密矩阵随机块中的随机位置,完成像素扩散。实验结果验证了该算法的优越性。Zhang等[7]为了确保图像在网络中的传输安全性,提出了基于双向扩散的数字图像加密技术。通过迭代高维混沌所输出的随机序列来置乱输入明文,从而改变明文像素位置;构造了双向扩散机制,对置乱图像的像素进行正反方向扩散来改变像素灰度值。实验结果验证了该算法的优越性。

基于混沌图像的加密技术是当前较为主流的图像安全保密技术,其主要利用混沌系统的混沌行为进行加密,取得了较好地应用效果。然而,此类加密技术存在明显的混沌周期性,并且只能加密方形明文,从而降低了算法的安全性和通用性。

为了削弱混沌周期性及提高算法适用性,本文提出了基于像素交叉循环移位与自控混沌映射的图像加密算法。在置乱阶段,通过明文像素位置来设计像素交叉循环移位机制,并对明文像素进行高度置乱,使该算法可加密方形与非方形明文;在扩散阶段,利用Logistic映射控制Tent映射的混沌轨迹,有效降低混沌周期性。同时,为了提高算法的抗差分攻击能力,构造了深度扩散机制,并最大化密文的统一平均变化强度(UACI)与像素改变率(NPCR),从而提高算法的抗攻击能力。最后,利用实验验证了本文所提加密技术的安全性与抗攻击能力。

1 本文图像加密算法设计

为了改善算法的安全性,本文提出了基于像素交叉循环移位与自控混沌映射的图像加密算法(见图1)。该算法主要涵盖了以下几个方面:①将基于像素交叉循环移位的图像置乱,从而提高置乱度与通用性;②将基于像素扩散机制的图像加密,从而改变像素值;③将基于深度扩散的密文增强,从而改善密文的统一平均变化强度和像素改变率。

图1 双图像加密过程Fig.1 Double image encryption process

1.1 基于像素交叉循环移位的图像置乱

为了提高当前图像加密技术的使用范围,使其不局限于方形图像,本文根据像素位置特点,利用均布Logistic映射的输出密钥,设计了像素交叉循环移位方法来高度打乱像素位置。若明文大小为MN,利用Zigzag扫描机制[8]将明文像素变成随机序列P={p(0),p(1),…,p(MN-1)}。H为任意选取的一个像素位置,经过像素交叉循环移位后,H变为置乱图像中对应像素的新位置H′,如下所示:

H′=H+(Sp(H)+p(H-1))mod(MN-H)

(1)

式中:p(H-1)为前一个置乱像素灰度值;Sp(H)为均布Logistic映射的迭代输出密钥;mod为求余操作。均布Logistic映射的迭代输出密钥模型[9]如下所示:

(2)

式中:Xk为第k次的迭代输出值;λ为控制参数,若λ∈[-4,4],则式(2)具有理想的混沌窗口。

利用式(1)来设计像素交叉循环移位模型,如下所示:

g(H)=p(H′)=

p(H+(Sp(H)+p(H-1))mod(MN-H))

(3)

p(H′)=p(H)

(4)

式中:g为交叉循环移位后像素位置。

为了详细解释像素交叉循环移位模型,在初始图像中选择9个像素,如图2和图3所示。若像素A及其前面的像素均已置乱,则剩下的像素B、C、D为交叉移位变换对象。图中的像素E、F、G是根据式(1)和式(3)对B、C、D交叉来实现的。如图3所示,图中的像素C被交叉循环移位为W。对于图3中剩余的像素,根据所提出的像素交叉循环移位模型进行变换,彻底改变其像素坐标。

2.对文本描述较少的部分进行扩写。上文中已经提到,绘本主要是由图画组成的,文字内容相对较少,因此,教师可以在绘本中挑选一部分描述景色的图画内容,要求学生通过自己的语言对这些景象进行描述,并写出自己看到这些景象时的内心感受。通过这种模式的训练,教师将能在写话训练中有针对性的培养学生描写某一具体场景的能力,并将这一能力应用到实际写作过程之中。《贪吃的小蛇》、《晚安,大猩猩》等绘本都预留了很多的想象空间,教师则可以结合这一类绘本来完成扩写训练。

图2 像素交叉循环移位机制Fig.2 Pixel cross cyclic shift mechanism

图3 像素G的像素交叉循环移位结果Fig.3 Cross cyclic shift results of pixel G

为了体现所提像素交叉循环移位机制的优势,本文以方形明文(见图4(a))与非方形明文(见图4(c))为对象,利用式(1)对其进行置乱,结果如图4(b)和图4(d)所示。根据混淆结果可知,所提像素交叉循环移位机制具有很好的通用性,对方形、非方形图像均可加密,具有较高的置乱度,并且明文信息均被隐秘,没有任何信息外泄。

1.2 基于像素扩散机制的图像加密

由于置乱操作只可改变像素在空间的位置而无法混淆其像素值[3],因此结合式(2)与Tent映射[10],设计了非周期性的像素扩散函数来混淆像素灰度值。Tent映射模型[10]如下所示:

(5)

式中:T(Xi)为Tent映射的迭代值;Xi为式(2)的输出值,也是式(5)的触发值;γ∈[0,2]为混沌状态的控制变量。

图4 像素交叉循环移位机制的置乱结果Fig.4 Scrambling results of pixel cross cyclic shift mechanism

为了避免单一依赖式(5)的输出序列对置乱密文的像素进行扩散而引起的混沌周期性,本文联合式(2)输出的Xi与式(5)来控制Tent映射的输出随机序列T,T={T1,T2,…,TMN}。Tent映射的原则如下所示:

(1)当式(2)的迭代值Xi≥0.5时,则式(5)的状态值由T(Xi)=γ(1-Xi)控制。

(2)当式(2)的迭代值Xi<0.5时,则式(5)的状态值由T(Xi)=γXi控制。

根据上述原则可知,Tent映射的最终输出序列由均布Logistic映射控制,其迭代状态由其本身与Logistic映射共同改变,从而有效降低了周期性。同时,为了消除序列T={T1,T2,…,TMN}的局部单调性,本文设计了序列单调抑制模型来增强其随机性,如下所示:

Ti′=round((Ti+0.5)×104)mod 256

(6)

随后,根据式(6)处理后的随机序列,基于非线性原理[11]构造了像素扩散函数,如下所示:

(7)

式中:yi为扩散后的密文像素值,y0设为100;⊕为异或操作。

根据式(7)对图4(a)和图4(d)进行连续像素混淆,输出结果如图5所示。根据图4的结果可知,置乱图像经式(7)扩散后,图像信息的隐秘程度被提高,所输出的密文状态与置乱结果截然不同,来自网络中的黑客很难从图5中获取相关信息。

图5 本文算法的扩散性能测试Fig.5 Diffusion performance test of the proposed algorithm

1.3 基于深度扩散的密文增强

为了改善算法的抗攻击性能,本文通过引入重力模型[12]来设计密文增强机制,从而扩大密文的像素改变率与统一平均变化强度值,如下所示:

(8)

(9)

(10)

为了体现密文增强机制的合理性与优势,本文根据式(8)对图5(a)进行处理(见图6),并采用像素改变率与统一平均变化强度[13]对增强前后的密文抗差分攻击能力进行量化,结果如表1所示。根据图5可知,增强后的密文与初始密文和置乱图像之间存在差异,从而增强了所提算法的安全性。根据表1数据可知,增强密文的像素改变率与统一平均变化强度值均要高于未增强密文,这表明图像信息经增强扩散机制混淆后,其抗攻击能力进一步提高。

表1 密文增强前后图像像素改变率与统一平均变化强度

图6 增强密文Fig.6 Enhanced ciphertext

2 实验结果与分析

为了测试所提算法的合理性与优越性,利用Matlab软件对其加密安全性进行了测试,同时将当前混沌加密技术较好的算法视为对照组[6,14]。算法的部分关键变量设置为:λ=3,X0=0.5,γ=1.5,x=150,y=300,z=150,G=3×108。

2.1 加密效果对比分析

因文献[6,14]中提出的均是混沌加密技术,此类算法只能对方形明文进行加密,为了实验的可比性,以方形图像图7(a)为样本,利用本文算法与文献[6,14]中提出的算法对其加密,结果如图7(b)~(d)所示。从算法的输出密文来看,本文算法与文献[6,14]中提出的算法都具有较好的安全性,图像信息被有效隐藏起来,无信息泄露。为了区别这3种算法输出密文安全性的差异,引用信息熵[4]进行算法评估,测试数据如表2所示。由表2可见,初始明文经本文算法扩散后,输出密文的信息熵值最大,高于文献[6,14]。本文算法通过像素交叉循环移位技术,提高了图像的置乱程度,并联合Logistic映射与Tent映射设计了像素扩散机制,由2个低维映射共同交叉确定扩散过程,有效降低了单一混沌系统的周期性。随后设计了相应的密文增强机制,进一步提高算法的像素改变率与统一平均变化强度。文献[6,14]中提出的算法均是基于单一混沌系统的加密算法,在多轮迭代过程中算法周期性给攻击者提供了线索,从而降低了算法的安全性。

图7 3种算法的加密效果Fig.7 Encryption effect of three algorithms

算法信息熵本文7.9605文献[6]7.9129文献[14]7.8976

2.2 抗差分攻击性能对比分析

理想的加密算法应能有效抗击外界攻击,尤其是抗差分攻击性能[13],因此本文利用像素改变率与统一平均变化强度来衡量3种算法的抗差分攻击能力。3种算法的像素改变率与统一平均变化强度曲线如图8所示。由测试结果可知,本文算法因设计了密文增强机制,在扩散结果的基础上进一步增大了密文像素改变率与统一平均变化强度,所以显著提高了密文的抗差分攻击能力。文献[6,14]中2种算法利用单一的混沌技术实现像素扩散,降低了混沌周期性,导致抗差分攻击能力不高。

图8 3种算法的抗差分攻击性能测试Fig.8 Performance test against difference attack for three algorithms

3 结语

为了消除混沌加密技术的周期性以及提高算法的保密性,本文提出了基于像素交叉循环移位与自控混沌映射的图像加密算法。首先,基于均布Logistic映射获取密钥,并设计像素交叉循环移位机制,高度置乱输入图像的像素空间位置;结合均布Logistic映射与Tent映射来定义像素扩散机制,消除混沌周期性;基于重力模型构造深度扩散机制,最大化密文的像素改变率与统一平均变化强度,从而提高算法的抗攻击能力。实验结果验证了该算法的优越性。

[1] MANDAL M K,KAR M,SINGH S K.Symmetric key image encryption using chaotic Rossler system[J].Security & Communication Networks,2014,7(11):2145-2152.

[2] KHANZADI H,ESHGHI M. Image encryption using random bit sequence based on chaotic maps [J].Arabian Journal for Science and Engineering,2014,39(2):1039-1047.

[3] WANG Xingyuan,ZHAO Yuanyuan,ZHANG Huili. A novel color image encryption scheme using alternate chaotic mapping structure[J].Optics and Lasers in Engineering,2015,82(7):79-86.

[4] HUA Tianxiang,CHEN Jiamin,PEI Dongju.Quantum image encryption algorithm based on image correlation decomposition [J].International Journal of Theoretical Physics,2015,54(2):526-537.

[5] 王帅,孙伟,郭一楠.一种多混沌快速图像加密算法的设计与分析[J].计算机应用研究,2015,12(2):512-515.

WANG Shuai,SUN Wei,GUO Yinan.Design and analysis of fast image encryption algorithm based on multiple chaotic systems[J].Computer Application Research,2015,12(2):512-515.

[6] 徐亚,张绍武.基于Arnold映射的分块双层自适应扩散图像加密算法[J].中国图象图形学报,2015,20(6):740-748.

XU Ya,ZHANG Shaowu. A block double layer adaptive diffusion image encryption algorithm based on Arnold mapping[J].Chinese Journal of Image Graphics,2015,20(6):740-748.

[7] ZHANG Xuanping,ZHAO Zhongmeng.Chaos-based image encryption with total shuffling and bidirectional diffusion [J].Nonlinear Dynamics,2013,75(1/2):319-330.

[8] 李玉珍,金鑫,赵耿.基于Zigzag变换与混沌的彩色图像加密方案[J].计算机工程与设计,2016,37(8):2002-2006.

LI Yuzhen,JIN Xin,ZHAO Geng.Color image encryption scheme based on Zigzag transform and chaos[J].Computer Engineering and Design,2016,37(8):2002-2006.

[9] 马建明,高正平,任兴东.基于混沌切换系统与余弦数量变换的图像加密[J].计算机工程与设计,2016,37(9):2490-2496.

MA Jianming,GAO Zhengping,REN Xingdong. Image encryption based on chaotic switching system and cosine number transformation[J].Computer Engineering and Design,2016,37(9):2490-2496.

[10] 王保平,李文康,吴成茂.改进分段Skew Tent映射及其在扩频通信中应用[J].红外与激光工程,2013,42(10):2772-2777.

WANG Baoping,LI Wenkang,WU Chengmao. Improved piecewise Skew Tent mapping and its application in spread spectrum communication[J].Infrared and Laser Engineering,2013,42(10):2772-2777.

[11] 张文全,张烨,周南润.基于随机分数梅林变换的非线性图像加密算法[J].计算机应用,2013,33(10):2865-2867.

ZHANG Wenquan,ZHANG Ye,ZHOU Nanrun. Nonlinear image encryption algorithm based on random fractional Merlin transform[J].Computer Application,2013,33(10):2865-2867.

[12] 郭静博,孙琼琼.改进的引力模型耦合明文像素相关交叉机制的图像加密算法[J].包装工程,2016,26(13):165-172.

GUO Jingbo,SUN Qiongqiong.An improved image encryption algorithm based on the cross mechanism of plaintext pixel correlation[J].Packaging Engineering,2016,26(13):165-172.

[13] MAJID K.A novel image encryption using Fourier series[J].Journal of Vibration and Control,2015,21(16):3450-3455.

[14] LI Chengqing,XIE Tao,LIU Qi. Cryptanalyzing image encryption using chaotic logistic map[J].Nonlinear Dynamics,2014,78(2):1545-1551.

猜你喜欢

明文加密算法密文
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
密钥共享下跨用户密文数据去重挖掘方法*
基于整数矩阵乘法的图像加密算法
基于混沌系统和DNA编码的量子图像加密算法
奇怪的处罚
混沌参数调制下RSA数据加密算法研究
一种基于密文分析的密码识别技术*
奇怪的处罚
基于小波变换和混沌映射的图像加密算法