一种基于混沌序列的图象加密算法.doc

上传人:精*** 文档编号:837439 上传时间:2023-09-08 格式:DOC 页数:6 大小:155.04KB
下载 相关 举报
一种基于混沌序列的图象加密算法.doc_第1页
第1页 / 共6页
一种基于混沌序列的图象加密算法.doc_第2页
第2页 / 共6页
一种基于混沌序列的图象加密算法.doc_第3页
第3页 / 共6页
一种基于混沌序列的图象加密算法.doc_第4页
第4页 / 共6页
一种基于混沌序列的图象加密算法.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、 一种基于混沌序列的图象加密算法摘要 混沌序列具有容易生成,对初始条件敏感以及具有白噪声的统计特性等特点。混沌序列的离散映射也具有其相似的特性。本文讨论了一种以实数值混沌序列为基础,通过离散映射而生成相应的符号矩阵和置换矩阵,并利用其进行数字图象加密,得到了较好的结果。关键词 混沌,混沌序列,排列变换,加密中图法分类号 TP391Image Encryption Arithmetic Base on Chaotic SequencesAbstract Chaotic sequences have several good properties including the ease of the

2、ir generation,their sensitive dependence on their initial condition and noise like. In this paper, we discussed an image encryption arithmetic base on chaotic sequences. We disperse the real number value chaotic sequences into symbol matrix and transformation matrix, then encrypt the image using the

3、m. Preliminary results are satisfactory.Keywords Chaos, Chaos sequences, Scrambling Transformation, Encryption1.引言随着Internet技术与多媒体技术的飞速发展,多媒体通信逐渐成为人们之间信息交流的重要手段。人们通过网络交流各种信息,进行网上贸易等。因此,信息的安全与保密显得越来越重要。对于多媒体信息,尤其是图象和声音信息,传统的加密技术将其作为普通数据流进行加密,而不考虑多媒体数据的特点,因此有一定的局限性。图象置乱(排列)变换是一种常见的图象加密方法。对于任一图象I,设I的大小

4、为n=MN,且I中总共包含k种颜色,其中具有颜色ci的像素个数为ni,n1+n2+nk=n,则的直方图可以看作是一个具有k个元素的多重集=n1c1,n2c2,nkck(其基数为n)。显然,上的任一一个全排列i均对应一幅图象i=MN,即Pi与Ii存在一一对应关系。令集合X=1,2,n,则X的一个置换是指X到其自身的一个双射p:XX。.定义两个置换p1和p2的乘法运算为p1p2:XX, p1p2(x)= p1(p2(x),xX,则由X的所有置换组成的集合在该乘法运算下构成一个群,记为Sn,称为X上的对称群6。置换p就是将X的一个排列变成另一个排列.由于图象与排列之间有一一对应关系,可将集合X的元素

5、看作是图象I中各元素顺序排列时的下标,则任何一个置换p都可看作是I到p(I)的一个图象变换。因此,可利用排列变换对图象进行加密。文献4,5介绍了一种基于几何运算的图象置乱变换算法。设图象I=NN,P=(x,y),x,y0,1,N-1为其上的任一像素的坐标,P=(x,y)为变换后的像素坐标,设A为22的变换矩阵,则变换p:P=(AP) mod N可将图象I变换为p(I),为保证变换后的图象的面积不变,又要保证取模运算能实现平移和拼接功能,必须要求|A|=1,且A中元素均为整数。当A=时,就是著名的Arnold变换。文献5介绍了基于幻方的图象置乱(轮换)变换。设图象I=NN,对给定的幻方A=NN,

6、将I与A的元素按行列作一一对应。将A中元素值为1的元素移到元素值为2的位置,将2移到3的位置,将n2移到1的位置,由此得到一个轮换p,A变成A1,记A1=p(A)。由于I与A是一一对应,随着A转换为A1,也将I转换为I1。当反复运用置换p,就可得到一系列置乱图象。 文献2,3分别提出采用参数化的二维混沌映射在空间域对图象的各象素进行排列。排列是迭代进行的,迭代次数可以作为密钥的一部分,具有较好的加密效果。这些算法属于空间域算法。 本文结合上述思想,并利用混沌动力学的特点,提出了基于混沌序列的图象加密算法。2.混沌系统 混沌现象是在非线性动力系统中出现的确定性的、类似随机的过程,这种过程既非周期

7、又不收敛,并且对切始值有极其敏感的依赖性。 一个一维离散时间非线性动力系统定义如下1: (1)其中, xk V , k=0,1,2,3,我们称之为状态。 而t: VV 是一个映射,将当前状态xk映射到下一个状态xk+1。如果我们从一个初始值x0 开始,反复应用 t , 就得到一个序列 xk ; k=0,1,2,3.。这一序列称为该离散时间动力系统的一条轨迹。 一类非常简单却被广泛研究的动力系统是logistic映射,其定义如下: (2)其中, 0 m 4 称为分枝参数,xk (0,1)定义同上。混沌动力系统的研究工作指出,当3.5699456 m 4 时,logistic映射工作于混沌态。也就

8、是说,由初始条件x0 在logistic映射的作用下所产生的序列 xk ; k=0,1,2,3.是非周期的、不收敛的并对初始值非常敏感。 另一类简单的映射是Chebyshev 映射,以阶数为参数。k 阶Chebyshev 映射定义如下: (3)其中 xk 的定义区间是(-1,1)。事实是通过简单的变量代换,logistic映射同样可以在区间 (-1, 1)上定义。其形式如下: (4)其中 l 0, 2。在 l=2的满射条件下, logistic 映射与 Chebyshev 映射是拓扑共轭的,其所生成的序列的概率分布函数PDF(probability density function)也是相同的

9、: (5)对于公式(2)形式的logistic映射,如果m=4, PDF 可以改写为: (6) 通过r(x),我们可以很容易地计算得到logistic映射所产生的混沌序列的一些很有意义的统计特性。例如,x的时间平均即混沌序列轨迹点的均值是: (7)关于相关函数,独立选取两个初始值x0 和y0 ,则序列的互相关函数为: (8)注意联合pdf r(x,y)= r(x) *r(y)。 而序列的自相关函数ACF (auto-correlation functions )则等于delta 函数 d(l)。这正是我们所需要的。 Logistic序列的以上特性表明,尽管混沌动力系统具有确定性,其遍历统计特性

10、等同于白噪声,其具有形式简单,初始条件的敏感性和具备白噪声的统计特性等诸多特性。3.基于混沌序列的图象置乱算法3.1 算法原理 在传统的迭代乘积密码系统中,排列算子的主要任务就是对明文数据块中的元素进行重排(也称为“置乱”),使得密文块看起来是随机的。不过,这些排列算子通常是事先确定好的,而与密钥无关。这是一个明显的缺陷,使得某些迭代乘积密码系统特别容易受到差分密码分析的攻击,而基于密钥的排列的安全性能会有较大改善。在基于密钥的排列算法中,以密钥作为排列的参数,参数能够唯一地确定排列的性质。 基于密钥的排列可以在频域或空间域进行。排列变换可以是局部的,或是全局的。空间域的排列加密算法实现较为简

11、单,因为不需要使用一般频域算法所必须的空域到频域的变换,计算量相对较少。不过,空间域的局部随机置乱效果不是很好。频域算法的优势是,在频域中每一点的变化对整个数据集合都会产生一定的影响。如图象数据经过DCT变换得到的DCT系数中如果有一个发生改变,就会通过IDCT逆运算体现在所有的象素点中。相对于空域算法,频域算法加密效率比较高。本文提出的算法正是基于以上理论。在该算法中,用户使用超级密钥来生成混沌序列,然后利用混沌序列产生相应的变换矩阵。设图象为I,I的大小为n=MN,在DCT域进行操作:l 将图象进行DCT变换,ID=DCT(I)l 利用实值混沌序列改变ID值,得IDSl 将IDS进行排列变

12、换,得IDSTl 将IDST与符号矩阵进行点乘,得IDSTSl 对IDSTS进行反变换,IE=DCT-1(IDSTS) 完成图象加密。3.2混沌序列生成 从logistic映射或Chebyshev 映射生成混沌序列的方法可以总结如下:l 实数值序列,即 xk ; k=0,1,2,3.,是混沌映射的轨迹点所形成的序列l 二值序列,可以通过定义一个阈值函数G,由上述的实数值混沌序列得到, (9)二值混沌序列即为G( xk ); k=0,1,2,3l 位序列:同样由实数值混沌序列得到。所不同的是,位序列是通过对xk ; k=0,1,2,3.中的xk 改写为L-bit 的浮点数形式得到的: (10)其

13、中bi(xk) 是|xk|的第i位。所需序列即为bi(xk); i=0,1,2, L ; k=0,1,2,3. l 四值混沌序列:这种混沌序列的生成与二值混沌序列的生成非常类似。3.3 算法设计 设原始图象为I,I=MN。利用密钥值x0,我们采用公式(4)生成实数值混沌序列xk,利用公式(2)生成实数值混沌序列yk,在本算法中,我们不使用该序列的初始段部分。1. 符号矩阵的生成 利用实数值混沌序列xk,k=1,2,,通过定义一个阈值函数Sign而得到一个符号序列,再由该序列按行或列顺序构成符号矩阵S,S= MN。 (11) 因此,该符号序列也具有混沌特性。2. 置换矩阵的生成 利用实数值混沌序

14、列,生成相应的置换矩阵P,P= MN。对P来说,其任一元素 Pij1,2, MN,且Pij = Pkl,当且仅当i=k,j=l。3. 置换规则p我们采用幻方的非线性置换(轮换)方法。将图象I= MN与置换矩阵P= MN的元素按行列作一一对应。将P中元素值为1的元素移到元素值为2的位置,将2移到3的位置,将MN移到1的位置,由此得到一个轮换p,P变成P1,记P1=p(P)。由于I与P是一一对应,随着P转换为P1,也将I转换为I1。4. 加密算法实现0 输入参数*.原始图象文件名InImage*.结果图象文件名OutImage*.密钥(x0,n)1 1.1 由密钥值x0,生成实数值混沌序列xk和y

15、k,k=1,2,1.2 生成符号矩阵S1.3 生成置换矩阵P1.4 将图象I进行DCT变换,然后利用yk改变部分DTC系数值,得ID1.5 for(Index = 1;Index = n;Index+)1.5.1 将ID按置换规则p进行置换,IDT 1.5.2 将IDT与符号矩阵S进行点乘 5. 解密算法实现 (a) (b) (c) (e) (f) (g)图1 (a)为lean原图(128128),(b),(c)分别为加密图象,(e),(f),(g)为相应直方图用户必须输入正确的密钥(混沌序列初始值x0和迭代次数n),将加密算法逆向运算,即可获得解密图象。4.实验结果与结论 (h) (i) (

16、j)图2 解密结果 (h)(x0=0.60772,n=1)为图1中(b)的解密 (i)(x0=0.60772,n=1)(j)(x0=0.60772,n=4)为图1中(c)的解密采用本文方法对多幅图象进行试验,图1为该算法在DCT域(b)图的密钥为x0=0.60773,n=1,(c)图的密钥为x0=0.60773,n=4)对lena图象的加密结果。本算法对图象的加密是在DCT域中进行的,其特点是:首先在DCT域利用实数值混沌序列对其DCT系数进行比例变换,极大地破坏图象的质量,完成第一次加密;其次对其进行非线性排列变换,进行第二次加密;最后通过符号矩阵而随机改变其DCT系数的符号,从而达到图象加密效果。上述三层加密既可进行局部加密,也可进行全局加密,其迭代次数可作为密钥的一部分。若不知密钥,就无法生成相应的比例矩阵,变换矩阵和符号矩阵,而且由于混沌序列对初始值非常敏感,即使密钥值有微小的变化也会得到完全不同的解密结果(图2),从而也就无法对图象进行解密。大量的实验证明,本算法具有加密速度快,加密效果好等的特点。对于生成的混沌序列,最好不选用初始段部分序列,这样能加强加密效果。

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922