一种基于混沌序列的数字图像加密算法周焕芹(渭南师范学院数学与信息科学系,陕西渭南714000)摘 要:基于混沌序列给出了一种图像加密算法.借助Logistic混沌动力学系统过程既非周期又不收敛,且对初始条件敏感性,生成混沌矩阵,对原图像进行融合操作,实现了对图像的加密过程.实验结果证明,算法简单易行,安全性好.关键词:数字图像;混沌序列;图像加密;迭代;置乱中图分类号T N911.73 文献标志码:A 文章编号:1009—5128(2008)02—0011—04收稿日期:2007—05—31基金项目:陕西省基础教育科研“十一五”规划课题(SJJY B06297);渭南师范学院科研基金资助项目(06YKF011);渭南师范学院教学改革研究项目(JG200712)作者简介:周焕芹(1962—),女,陕西澄城人,渭南师范学院数学与信息科学系副教授20世纪60年代人们发现了一种特殊的自然现象———混沌(chaos),混沌是一种非线性动力学规律控制的行为,表现为对初始值和系统参数的敏感性、白噪声的统计特性和混沌序列的遍历特性,其吸引子的维数是分维,有十分复杂的分形结构,具有不可预测性.由于混沌序列有如此优良的密码学特性,混沌密码学成为现代密码学的重要研究内容.最早将离散混沌动力学系统应用于加密算法的是M atthe w s[1],1990年,他给出了一种一维的混沌映射.该映射根据初始条件产生的具有混沌特性的伪随机序列可以直接应用于一次一密的加密算法中,但是该混沌映射在使用计算机实现时会退化成周期序列,而且该序列的周期一般较小.1990年,Habutsu等人也给出了一种基于线性的Tent映射的混沌加密系统[2],该方法保留了混沌系统对于初始条件的敏感性.1994年,B iance利用Logistic映射产生实数序列,应用范围较广[1-4].随着网络技术的发展,大量个人和公众信息在网络上传播.信息的安全问题成为人们关注的热点,而信息安全中图像安全是众所关心的.对于图像信息,传统的保密学尚缺少足够的研究.随着计算机技术与数字图像处理技术的发展,对此已有一些成果[6].近年来,相继召开了关于数据加密的国际学术会议,图像信息隐蔽问题为其重要议题之一,且有关的论文以数字水印技术为主.数字图像置乱技术,可以看做数字图像加密的一种途径,也可以用做数字图像隐藏、数字水印图像植入、数值计算恢复方法和数字图像分存的预处理和后处理过程.作为信息隐藏的基础性工作,置乱技术已经取得了较大的发展,提出了很多有效的方法如:基于A rnold变换,F ASS曲线,分形技术,幻方,正交拉丁方,骑士巡游,仿射变换,原根,Gray码变换的置乱方法[7].本文应用离散混沌动力系统设计了一种图像加密/解密算法.该方法的特点是:无论从加密还是解密算法的设计都是由不同的动力系统提供的.本文依赖于随机密钥的非线性迭代完成图像的像素融合,其中所用的子密钥由离散混沌系统产生.分析和仿真结果表明,经过这样的融合,算法具有良好的安全性及鲁棒性.1 算法原理由混沌矩阵对图像置乱.从构成图像的像素角度考虑,一幅图像大小为M×N,具有256级灰度的图像,设图像为I m age,对应于像素点(i,j)的灰度值记为I m age(i,j),其中1≤i,j≤L,Endi m age(i,j)为(i,j)坐标处融合操作后图像的像素灰度值,即要设计映射f,使得 f:I m age(i,j)→End i m age(i,j)(1)为了使得融合后的像素灰度值Endi m age(i,j)具有不可预测性,本文采用离散混沌映射生成离散混沌矩阵Keyi m age(i,j)来达到这个目的.生成Keyi m age(i,j)的方法如下:采用目前广泛研究的Logistic映射构造混沌序列.混沌系统表述为 αk+1=μ・αk・(1-αk),k=0,1,2, (2)2008年3月第23卷第2期 渭南师范学院学报Journal of W einan Teachers UniversityM arch2008Vol.23 No.2其中,3.569946…≤μ≤4,α0∈(0,1).这样,Logistic映射可以定义在(0,1)上.给定初值μ和α,经过N-1次混沌迭代运算得到混沌实值序列α1,α2,…,αN,通过排序变换将这N个值由小到大排序,生成β1,β2,…,βN,并确定αi在β1,β2,…,βN中的位置编号,形成地址集合G1={g1,g2,…,g N,},反复操作M次,便生成混沌矩阵Keyi m age: Keyi m age=G1G2…G M(3)则置乱操作可表示为:Endi m age(i,j)=γi,,j×(I m age(i,j)-Keyi m age(i,j))+Keyi m age(i,j))mod256(4)其中γi,,j为由混沌系统生成的融合因子,这里采用Logistic映射生成(同(2)式).对图像的解密可由下式得到: I m age(i,j)=1γi,,j×(Endi m age(i,j)-Keyi m age(i,j))+Keyi m age(i,,j))mod256(5)2 图像加密解密算法由第一部分我们可以得到具体的加密解密算法如下:算法1:加密算法Step1.输入原图像I m age和迭代次数ti m es;Step2.输入密钥:μ1和α0,由式(2)和(3)生成混沌矩阵Keyi m age;Step3.输入密钥:μ2和γ0,由式(2)生成融合因子γi,,j;Step4.利用式(4)对原图象进行融合置乱,得到置乱图像Endi m age.算法2:解密算法Step1.输入置乱图像Endi m age和迭代次数ti m es;Step2.输入密钥:μ1和α0,由式(2)和(3)生成混沌矩阵Keyi m age;Step31输入密钥:μ2和γ0,由式(2)生成融合因子γi,,j;Step41利用式(5)对图像进行置乱恢复.3 算法分析从结构上分析,整个算法主要思想是利用Logistic混沌映射生成混沌矩阵,利用Logistic映射生成融合因子对原图像进行融合操作.基于混沌序列的数字图像加密算法,其安全性主要依赖于:(1)所选用的混沌序列的安全性:从式(3)可知,当Endi m age不可知,则要通过Endi m age直接解出I m age是不可能的,而当图像较大时,相应生成的混沌矩阵也会很大,采用穷举法进行破解也是困难的,因为其时间复杂度为O(M×N×256);(2)由Lo2 gistic映射生成融合因子使得破解更为困难.同时,由于混沌系统是拓扑可迁的,所以,初始时很小的误差会很快传递到整个吸引域相空间上,这一特点也增加了破译的难度.此外,加密者可以自由随意地选择密钥,这样的选择可以使得算法有着几乎一次一密特性的安全性.另外本文给出的算法密钥较多,比如:迭代次数ti m es,混沌序列初值α,μ1,γ0,μ2等等,使得破解更为困难,另外也可以减少密钥个数,比如在上述密钥中固定可别参数可以减少密钥,使得算法具有更高的灵活性,根据实际情况应用起来更为方便.4 数值实验根据以上算法,采用Logistic混沌序列进行图像融合.如图1所示:选择Lena图像(256×256)作为仿真图像,选择密钥分别为:μ1=4,α0=0.7,μ2=4,γ0=0.6,ti m es=3.・21・ 周焕芹:一种基于混沌序列的数字图像加密算法 第23卷图1 利用本文给出的算法的加密图像和解密图像从图1可以看出,算法能够有效的加密和解密原图像数据.图2是由错误密钥的解密图像(其中仅改变一个密钥μ1=4,ti m es =3,μ2=4,γ0=0.6,α0=0.7000000000000001).由图2可以看出即使密钥有很小的差异也无法解密出原图像,使用枚举搜索很难对加密图像进行解密.表明本文算法具有较好的安全性.5 结 论本文给出了一种图像加密算法,该算法具有较好的加密效果.算法思想为:首先是利用Logistic 混沌映射生成混沌矩阵,然后利用Logistic 映射生成融合因子对原图像进行融合操作,从而得到置乱图象.该算法的优点是密钥较多,使得用穷举发破解困难,另外本文在生成混沌矩阵和融合因子时均采用Logistic 映射,也可以用其它混沌映射增加加密效果和安全性.实验数据表明,本文算法具有很好的加密效果.・31・2008年第2期 渭南师范学院学报 图2 错误密钥的解密图像参考文献:[1]R A J M atthe w s .O n the derivation of a chaotic encryption algorithm [J ].C ryptologia .1989,(4):29—42.[2]T Habutsu,Y N ishio,I Sasase,et al .A secret cryptosyste m by iterating a chaotic m ap [A ].A dvances in C ryptology EU 2RCRYPT ’91[C ].B erlin:Springer -V erlag .1991,127—140.[3]M.E .B ianco,G .L.M ayhe w.H igh Speed Encryption Syste m and M ethod [J ].US Patent,1994,15(5):365—588.[4]Zhang Han,W ang X iufeng .A ne w i m age encryption algorithm based on chaos syste m [A ].International conference on robotic,intelligent syste m s and signals processing .Changsha,China .2003,778—782.[5]D ang P P,Chau P M.I m age encryption for secure Internet m ulti m edia applications [J ].IEEE T ransactions on Consum er Elec 2tronics,2000,46(8):395—403.[6]Yonghong Zhang,B aosheng Kang,Xuefeng Zhang .I m age Encryption A lgorithm B ased on Chaotic Sequence [C ].The 16THInternational Conference on A rtificial R eality and Telexistence,2006,221—223.[7]丁玮,齐东旭.数字图像变换及信息隐藏与伪装[J ].计算机学报,1998,21(9):838—843.[责任编辑 舒尚奇]A D i g it a l Image Encrypti on A lgor ith m Ba sed on Chaos SequencesZHOU Huan 2qin(Depart m ent of Mathe matics and I nf or mati on Science,W einan Teachers University,W einan 714000,China )Abstract:An algorith m of digital i m age encryp ti on is p resented .Based on chaos sequences,with the hel p of Logistic chaos dy 2na m ics,syste matic p r ocess is non 2peri od,non 2convergence and sensitivity t o the initial conditi ons,p r oducing the real chaos matrix t o substituti on the p ixel .W e get an algorith m for encryp ti on and decryp ti on a digital i m age .The nu merical experi m entati ons show that the hiding algorith m is efficient and safety .Key words:digital i m age;chaos sequence;i m age encryp ti on;iterative;scra mbling ・41・ 周焕芹:一种基于混沌序列的数字图像加密算法 第23卷。