您好,欢迎来到尔游网。
搜索
您的当前位置:首页基于混沌系统的彩色图像加密算法

基于混沌系统的彩色图像加密算法

来源:尔游网
基于混沌系统的彩色图像加密算法

田嘉琪;谢淑翠;张建中

【摘 要】为提高图像加密算法的安全性,提出一种将改进的Lorenz混沌系统应用到彩色图像的加密方案,同时考虑RGB三分量之间的相互关联.提取彩色图像的RGB三分量并分块,将混沌系统产生的伪随机序列转换为明文相关的密钥序列和动态置乱序列,明文发生微小改变密钥流序列也会完全不同;对R分量实现块置乱和像素点逐一置乱,对G、B分量分别进行迭代扩散;对已加密的三分量进行前向和后向扩散.仿真和安全性分析结果表明,该算法具有可行性、较高的安全性和密钥敏感性.

【期刊名称】《计算机工程与设计》

【年(卷),期】2019(040)007

【总页数】7页(P1816-1822)

【关键词】混沌系统;图像加密;RGB三分量;置乱扩散;前向后向扩散

【作 者】田嘉琪;谢淑翠;张建中

【作者单位】西安邮电大学通信与信息工程学院,陕西西安710121;西安邮电大学通信与信息工程学院,陕西西安710121;陕西师范大学数学与信息科学学院,陕西西安

710119

【正文语种】中 文

【中图分类】TP309.7

0 引 言

图像数据相对于文本数据,数据量大、数据相关性强和数据冗余信息量大,所以传统的文本加密系统已经无法满足图像、视频加密的实时性和安全性要求。

1998年,J. Fridrich提出了混沌系统迭代状态值直接用于置乱图像像素点的方法,混沌数字图像加密研究进入初期阶段。近年来,由于混沌系统产生的伪随机序列密钥空间大、对初值敏感及随机性好等特点,把混沌系统应用于图像加密已成为目前研究的热点。其中,Lorenz系统是最为经典的混沌系统,得到广泛的应用和推广。但是同时有大量理论研究证明了低维混沌系统产生的伪随机序列存在安全性缺陷,因此提出了一些改进的混沌系统[1-3]。对图像加密可以对图像像素直接进行置乱扩散,也可以对图像像素的RGB三分量进行加密[4-7]。

为了克服加密算法的密钥流与明文不相关、置乱扩散完全的缺陷,本文提出一种基于改进Lorenz混沌系统的彩色图像加密方案,构建了与明文图像相关的密钥序列和动态置乱序列。首先在空域提取RGB三分量并分块,对R分量进行块置乱和像素点逐一置乱,然后对G、B分量分别进行扩散,最后再对已加密的三分量进行前向和后向扩散。该算法同时也考虑到RGB三分量的相互关联,使算法更加安全可靠。

1 混沌系统

混沌是确定性非线性动力学系统出现的类随机过程。混沌系统的典型特征是具有正的最大Lyapunov指数。本文采用的是改进的Lorenz混沌系统[1],其动力学方程为

(1)

式中: a、 b、 c、 d为混沌系统的系统参数, x、 y、 z为系统的状态变量,当a=10, b=40, c=1, d=2.5时,系统呈现混沌状态。该系统正的李氏指数为2.084,大于Lorenz混沌系统的正的李氏指数,更符合加密要求。改进的Lorenz混沌系统产生的x-z相图如图1所示。

图1 改进Lorenz系统的x-z相图

本文采用四阶经典龙格—库塔法对该混沌系统进行离散化,得到3组状态值序列。由于混沌系统的状态值是浮点数,由混沌系统状态值构成的序列不能直接用于图像密码系统,所以,一般对于灰度等级为L的明文图像,需要将混沌状态值转换为0~L-1的整型数,从而得到混沌伪随机序列,转化后的该序列可适用于图像密码系统[8]。

2 加密算法设计

在空域中加密灰度图像或者彩色图像,可以直接对像素点进行置乱扩散,并且图像的每个像素可以进行RGB分解得到3个图像矩阵。每一幅彩色图像矩阵在matlab中大小

为M×N×3, 图像的宽为M,高为N,3代表3个分量即R、G、B。其中每个分量图像矩阵在matlab中大小为M×N。 彩色图像为8 bit的,灰度等级为256,图像矩阵元素取值为0~255。

2.1 RGB分量分块及序列预处理

彩色图像为M×N×3的矩阵(M*N>50), 对彩色图像处理步骤如下:

(1)提取彩色图像的R、G、B分量,并将三分量矩阵按从左到右,从上到下的顺序展开成一维向量。然后将3个向量分别分成u块,每个图像块包含16个像素点,如果最后一个图像块小于16个像素点,则填充0补齐,分块方式如下

u=ceil(M*N/16)

(2)

式中:ceil()的含义是向正无穷方向取整,u是16的整数倍。

(2)给定混沌系统的系统参数和状态变量的初始值,为使系统达到充分混沌状态,迭代系统r1+r2+r3次跳过过渡态。然后再迭代M*N次得到长度为M*N的3个伪随机混沌序列x、y、z。

(3)对改进Lorenz混沌系统生成的3个序列x、 y、 z进行改造,得到3个伪随机序列X、Y、Z和4个伪随机矩阵U、I、Q、V以满足对彩色图像加密的要求。改进过程如

X(i)=mod(floor(mod(x(i),1)*1013),256)

(3)

(4)

其中,mod()的含义是取余运算,floor()的含义是取整运算,Y、Z的处理过程与式(3)类似。

2.2 R分量置乱

像素置乱不会改变像素值的大小,只会改变像素的空间位置,以达到降低像素点的空间相关性的目的。本算法对R分量的置乱分为块置乱和像素点逐一置乱。

2.2.1 块置乱

(1)对分块后的G、B分量矩阵,按从左到右,从上到下分别排列成u个大小为4*4的矩阵V1(i)(i=1,2,3,,u) 和V2(i)(i=1,2,3,,u)。

(2)计算V1(i) 每一行的行和得到1×4的行和矩阵,然后计算V1(i) 每一列的列和得到1×4的列和矩阵,并把行和矩阵和列和矩阵相加,最后把和矩阵中所有元素加1,得到T1。 V2(i) 也做相同处理,得到T2。若i为奇数,T(i) 计算公式如式(5);若i为偶数,

T(i) 计算公式如式(6)

T(i)=255-mod(T1*(S(i∶i+3)*V1)T,256)

(5)

T(i)=255-mod(T2*(S(i∶i+3)*V2)T,256)

(6)

其中,S序列是X序列、Y序列与Z序列三者的异或。

(3)把X、Y序列按上一节中对三分量的分块方式分成u块,每块16个元素,然后计算每块的元素均值。并提取各均值的低四位和高四位,分别保存在Xd(i)、 Xg(i)、 Yd(i)、 Yg(i) 中。

(4)根据步骤(2)产生的T控制m的取值。若 (T(i)+i) 为偶数, Xg(i) 放在m(i) 的高四位, Yd(i) 放在m(i) 的低四位;若 (T(i)+i) 为奇数, Yg(i) 放在m(i) 的高四位, Xd(i) 放在m(i) 的低四位。

(5)对m进行升序排列,并记录下置乱序列HH,用置乱序列HH实现R分量的块置乱。即R(i,j) 与R(HH,j) 互换位置。

2.2.2 像素点置乱

(1)把块置乱后的R分量,按行从左到右,从上到下重新排成一个M×N的矩阵R1。并求R1矩阵与ones(N,1) 相乘并转置的结果H,其为1×M矩阵;求ones(1,M) 与R1矩阵相乘的结果L,其为1×N矩阵。如果 (i+j) 为偶数,计算 (m1,n1), 如式(7);若 (i+j) 为奇数,则 (m1,n1) 如式(8)

(7)

(8)

(2)把块置乱后的R1(i,j) 与R1(m1,n1) 互换位置。

2.3 G分量扩散

像素扩散是在不改变像素点位置的条件下,将明文像素点信息隐藏在密文像素点中。G分量扩散过程如下:

(1)计算置乱后的R分量每个元素的低三位,并相应的转换成十进制数,然后S序列根据该十进制数循环左移相应的位数,得到S1。

(2)取S1序列的后50个元素中的非重复值,并按其在S1中的顺序放入ig(ig长度为L)中。

(3)取出G分量、置乱后的R分量按行展开的一维向量中下标为ig的元素,并对G分量中下标为ig的元素进行扩散加密,过程如下

GGi=mod(GGi-1+G1i+R1i,256)

(9)

式中: GGi是当前像素加密后的像素值, GGi-1是前一个已加密的像素值, G1i是G分量中下标为ig的元素。注意,对第一个像素加密时, GGi-1的初始取值是G分量中下标为ig的元素的最后一个像素值, R1i的初始取值是置乱后的R分量中下标为ig的元素的最后一个像素值。

(4)G分量剩下的元素与序列S1和剩下的R分量异或。

2.4 B分量扩散

B分量扩散步骤如下:

(1)B分量的奇数位的元素与S1序列和加密后G分量的偶数位上的元素异或;B分量的偶数位的元素与S1序列和加密后G分量的奇数位上的元素异或。

(2)把上一步得到的B分量与置乱后的R分量和加密后的G分量异或。

2.5 三分量扩前向和后向扩散

对三分量进行前向和后向扩散,使每个明文像素点的信息都扩散到密文的每个像素点中。前向扩散的密钥K1是X序列与Y序列的异或,后向扩散的密钥K2是X序列与Z序

列的异或。过程如下

(10)

式中: R1k是当前像素前向扩散后的像素值, R1k-1是前一个像素前向扩散后的像素值, Rk是当前待加密的R分量的像素点值。注意:前向扩散的第一个像素R1k-1的初始取值为r1+r2, 后向扩散的第一个像素值R2k+1的初始取值也为r1+r2。

其它两个分量的前向和后向扩散过程与式(10)类似。G分量前向扩散的第一个像素G1k-1的初始取值为r2+r3, 后向扩散的第一个像素值G2k+1初始取值也为r2+r3; B分量前向扩散的第一个像素B1k-1的取值为r1+r3, 后向扩散的第一个像素值B2k+1初始取值也为r1+r3。

解密算法是上述加密算法的逆过程。

3 仿真结果及分析

该加密算法是在MATLAB R2016a仿真平台上实现的。实验采用的是标准彩色测试图像lena,大小为512×512。密钥为K=[x0,y0,z0,r1,r2,r3]。 这里x0、y0、z0为 [-1.3235,1.5667,7.34], r1、r2、r3值分别为58,187,12。图2(a)为原始明文图像,图2(b)为原始明文图像R分量的灰度图像,图2(c)为R分量置乱后的灰度图像,图2(d)为加密后的密文图像。由图2可以看出,R分量的灰度图像经过置乱后已经完全无法看出原来的图像信息,并且明文图像经过加密后整个图像呈现噪声样式,因此从直观上

来看加密效果较好。

图2 图像加密效果

3.1 密钥空间分析

密钥空间是指所有合法的密钥构成的集合。在该加密算法中,密钥空间由6个参数 (x0,y0,z0,r1,r2,r3) 共同组成。x0、y0、z0为3个双精度数,r1、r2、r3为8 bit。若设置计算精度为10-14[9,10],则密钥空间为

K=1014×1014×1014×28×28×28≈1049

(11)

表1是本文算法密钥空间与文献[9,10]的比较,由表1可知,本文算法密钥空间大于文献[9,10],而且本文算法中前向和后向扩散三分量的初始值可作为密钥种子,理论上本算法的密钥空间足够大,能有效抵抗穷举攻击。

表1 密钥空间比较文献[9]文献[10]本算法密钥空间9.8×104610381049

3.2 密钥敏感性分析

密钥敏感性是衡量加密算法是否安全的重要衡量指标。密钥对系统初始状态值越敏感,算法安全性越高。主要从两个方面验证:一是对于同一幅明文图像,对密钥改变10-13

的数量级,观察得到的密文图像的差图像;二是直观上观察正确解密和错误解密加密图像的区别。图3(a)是明文图像,图3(b)是参数未改变的密文图像,图3(c)是x0改变10-13后的加密图像,图3(d)是图3(b)与图3(c)间的差图像。图3(e)是正确解密的图像,图3(f)是初值x0改变10-13后,错误解密的图像。

图3 敏感性测试

由图3(d)可看出,对密钥引入微小的改变,加密同一明文图像,两个密文图像的差图像呈现噪声样式,直观上反映了两个密文差异显著,即该加密算法具有密钥敏感性。由图3(f)可看出即使x0发生微小改变,都不能正确解密,这也表明加密算法具有密钥敏感性。

3.3 直方图分析

图像直方图是对图像像素分布的统计分析。加密后图像的直方图分布越均匀,加密算法就更能有效抵御统计分析攻击。图4(a)是明文图像R分量的直方图,图4(b)是明文图像G分量的直方图,图4(c)是明文图像B分量的直方图,图4(d)是加密后R分量的直方图,图4(e)是加密后G分量的直方图,图4(f)是加密后B分量的直方图,图4(g)是明文图像的直方图,图4(h)是密文图像的直方图,图4(i)是明文图像R分量置乱后的直方图。

图4 直方图分析

由图4可看出,密文(d-f,h)图像直方图分布均匀,而明文图像直方图跌宕起伏。由图4(i)可以看出置乱并不能改变像素值的大小,只能改变其空间位置,置乱后的直方图与原始R分量直方图分布完全相同。

直方图χ2检验是从数量上衡量明文直方图和密文直方图的差别。直方图χ2统计量的计算公式如式(12)所示[8],直方图χ2检验理论值为 当该统计量的计算值小于该理论值时,说明直方图是均匀分布的。由表2可知,加密后密文图像和其3个分量的卡方统计量的计算值小于理论值,所以可认为图4(d-f,h)近似均匀分布

(12)

式中: fi为直方图中每个灰度值的像素点频数 (i=0,1,2,3,,255), g=M*N/256。

表2 χ2检验R分量G分量B分量密文卡方检验值236.738 281280.740 234216.0 844251.083 333

3.4 相关性分析

明文图像相邻像素值之间差别较小,相关性较高。加密后,密文图像相邻像素值之间相关性较低。相邻像素相关性的计算公式如式(13)所示,表3对明文和密文图像的RGB这3个分量,分别计算其水平、垂直、正对角和反对角方向上的相关系数值。表4是密文图像相邻像素的相关系数与文献[6,12,13]的比较

(13)

其中,x、y表示相邻两个像素点的灰度值,N表示相邻像素点的对数。

从表3可以看出,明文图像的各个方向上的ρxy趋近于1;而密文图像的各个方向上

的ρxy趋近于0,可知加密后图像的相邻像素之间相关性降低,几乎不相关。本文以水平方向上前后两点灰度值为横纵坐标,对相邻像素的相关情况进行绘图,如图5所示。由图5(a)~图5(c)可以看出,明文图像三分量相邻像素点聚集在对角线附近;由图5(d)~图5(f)可以看出密文图像三分量相邻像素点散布在整个矩形区域内,可知明文图像相关性较高,密文图像几乎不相关。

表3 相邻像素的相关系数相邻方向明文图像R分量密文图像R分量明文图像G分量密文图像G分量明文图像B分量密文图像B分量水平0.9 1850.002 3440.983 516-0.025 40.960 3880.055 818垂直0.978 8780.000 4500.972 3190.018 5440.935 7230.023 845正对角0.967 0310.007 3820.965 609-0.018 8730.917 50.018 299反对角0.978 317-0.033 8720.967 3730.010 70.922 2870.007 441

表4 相关系数比较相邻方向文献[12]文献[6]文献[13]本算法水平0.003 2760.0265-0.09860.002 035

垂直

0.004 2650.0792-0.0630-0.007 984

对角

0.001

8210.06250.0509-0.000 440

从表4可以看出,对文献[6,12,13]来说,本算法削弱像素相关性的效果更好。

3.5 信息熵

信息熵反映图像信息的随机性和不确定性。像素分布越均匀,熵越大,加密算法的安全性越高。信息熵的计算公式如下

(14)

式中: L为图像的灰度等级数,p(i)为灰度值i出现的概率。对于L=256的灰度图像,信息熵理想值为8。本文求得的信息熵为7.999 769,非常接近理论值,说明算法安全性高。表5是RGB三分量加密前后的信息熵,可以看出加密后三分量信息熵更接近理论值。表6是密文信息熵比较,可以看出本算法加密后图像的信息熵更接近理论值。

图5 RGB三分量水平方向像素的分布情况

表5 信息熵待测量密文R分量密文G分量密文B分量密文信息熵7.999 3497.999 2287.999 2287.999 769

表6 信息熵比较待测量文献[10]文献[6]文献[14]本算法密文7.999 5017.99927.99917.999 769

3.6 峰值信噪比

峰值信噪比PSNR(peak signal-to-noise ratio)可以用于评估加密的失真度,反映了加密算法的质量。PSNR值越小,两个视频图像之间失真度越大。均方差MSE(mean square error)是两个图像之间累积的平方误差。MSE值越大,加密效果越好。此外,还可利用PSNR对加密图像质量进行评估,PSNR越小,它表示原始图像和加密图像之间差异越大。计算公式如式(15)[11]

(15)

式中: p1(i,j) 是明文图像, p2(i,j) 是密文图像。 Imax是图像的最大像素值。表7

是RGB三分量PSNR和MSE的值。从表中可以看出原始图像和加密图像之间差异显著。

表7 RGB三分量PSNR和MSE值待测量RGBMSE10 706.743 3979055.298 1307098.594 849PSNR7.834 2308.561 7769.619 080

4 结束语

本文利用改进的Lorenz系统对彩色图像的RGB三分量进行置乱扩散加密,使密钥序列与明文动态相关,并且同时建立了三分量的内在联系,明文发生微小改变密钥都将完全不同,提高了算法的安全性。仿真结果表明,该彩色图片加密算法密钥空间大,密钥敏感性高,密文图像和明文图像间差异显著,加密效果好,经加密后像素之间相关性低,安全性较高,可有效抵御安全性攻击。

参考文献:

【相关文献】

[1]WANG Yan,TU Li.A new image encryption algorithm based on improved Lorenz chaotic system[J].Journal of Central South University(Science and Technology),2017,48(10):2678-2685(in Chinese).[汪彦,涂立.基于改进Lorenz混沌系统的图像加密新算法[J].中南大学学报(自然科学版),2017,48(10):2678-2685.]

[2]GUAN Guorong,WU Chengmao,JIA Qian.An improved high performance Lorenz system configuration and its application[J].Chinese Journal of

Physics,2015,(2):35-48(in Chinese).[官国荣,吴成茂,贾倩.一种改进的高性能Lorenz系统构造及其应用[J].物理学报,2015,(2):35-48.]

[3]PANG Shouquan,LIU Yongjian,ZHU Congxu.Circuit implementation and application of hyperchaotic Lorenz system[J].Computer Engineering and Applications,2013,49(7):235-239(in Chinese).[庞寿全,刘永建,朱从旭.超混沌Lorenz系统的电路实现与应用[J].计算机工程与应用,2013,49(7):235-239.]

[4]Murillo-Escobar MA,Cruz-Hernanandez C,Abundiz-Perez F,et al.A RGB image encryption algorithm based on total plain image characteristics and chaos[J].Signal Processing,2015,109(4):119-131.

[5]Kumar M,Lqbal A,Kumar P.A new RGB image encryption algorithm based on DNA encoding and elliptic curve Diffie-Hellman cryptography[J].Signal Processing,2016,125(8):187-202.

[6]Guesmi R,Farah MAB,Kachouri A,et al.A novel chaos-based image encryption using DNA sequence operation and secure hash algorithm SHA-2[J].Nonlinear Dynamics,2016,83(3):1123-1136.

[7]Praveenkumar P,Amirtharajan R,Thenmozhi K,et al.Triple chaotic image scrambling on RGB-a random image encryption approach[J].Security and Communication Networks,2015,8(18):3335-3345.

[8]ZHANG Yong.Chaotic digital image cryptosystem[M].Beijing:Tsinghua University Press,2016(in Chinese).[张勇.混沌数字图像加密[M].北京:清华大学出版社,2016.]

[9]Mannai O,Bechikh R,Hermassi H,et al.A new image encryption scheme based

on

a

simple

first-order

time-delay

system

with

appropriate

nonlinearity[J].Nonlinear Dynamics,2015,82(1-2):107-117.

[10]Seyedzadeh SM,Norouzi B,Mosavi MR,et al.A novel color image encryption algorithm based on spatial permutation and quantum chaotic map[J].Nonlinear Dynamics,2015,81(1-2):511-529.

[11]Norouzi B,Seyedzadeh SM,Mirzakuchaki S,et al.A novel image encryption based on row-column,masking and main diffusion processes with hyper chaos[J].Multimedia Tools and Applications,2015,74(3):781-881.

[12]El-Latif AAA,Li L,Wang N,et al.A new approach to chaotic image encryption based on quantum chaotic system,exploiting color spaces[J].Signal Processing,2013,93(11):2986-3000.

[13]Ye GD,Wong KW.An image encryption scheme based on time-delay and hyperchaotic system[J].Nonlinear Dynamics,2013,71(1-2):259-267.

[14]Lee WK,Phan RCW,Yap WS,et al.SPRING:A novel parallel chaos-based

image encryption scheme[J].Nonlinear Dynamics,2018,92(2):575-593.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- axer.cn 版权所有 湘ICP备2023022495号-12

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务