彩色图像混沌加算法.docVIP

  • 6
  • 0
  • 约7.45千字
  • 约 7页
  • 2016-10-19 发布于贵州
  • 举报
彩色图像混沌加算法

彩色图像混沌加密算法 彩色图像处理是数字图像处理的重要组成部分,在网络与多媒体通信中,常常涉及到彩色图像文件加密。为此,我们提出了一种彩色图像混沌加密算法,该加密算法通过选用Lorenz系统中三个不同维的变量生成置乱矩阵来分别实现对RGB彩色图像三分量的置乱加密,从而实现对整个彩色图像文件加密。 一、彩色图像混沌加密算法设计实现 1、对Lorenz混沌序列的优化 Lorenz动力学方程为: 其中, 参数σ,r,b 的典型值分别为σ= 10,r=28,b=8/3,在σ和b不变,当r24.74时,系统进入混沌状态。 但该系统输出的实值混沌序列有一些固有缺陷:x,y,z的值域各不相同,不利于批处理;x,y,z局部取值呈现单调性,易受线性预测攻击;x,y,z自相关特性非理想的δ函数,互相关特性非理想的零特性,难以保证不可预测性,而且系统多输出特性也得不到充分利用。为此,有专家提出了一种对Lorenz混沌序列的优化方法,构建了式(2)所示的一个数学模型: 其中,x’,y’,z’三为优化后的实值混沌序列;m为控制参数,通过它可以提高序列取值的不规则性;round()为取最接近整数函数。经过实验,证明此优化序列具有良好的混沌特性、较理想的万函数自相关特性和近似为0的互相关特性。 本空域算法采用了此混沌优化序列。 2、置乱算法 利用式(2)产生的三个优化后的混沌序列x’,y’,z’生成三个置乱矩阵,分别对RGB彩色图像的三个分量进行置乱加密。 置乱矩阵的生成方法:利用优化混沌序列生成相应的置换矩阵PM×N, 对PM×N来说, 其中任一元素Pij∈[1,2,…,M×N],且Pij=Pkl,当且仅当i=k,j=1。 比如:M=4,N=4,P即为4×4的矩阵,由优化混沌序列生成16个实数值组成的混沌序列为: 1010 1011.0759704、11 11 10 99 9 9 989 910对以上序列按大小排序,然后从1到16进行标识,即可得到序列:4、6、7、3、1、2、8、15、10、12、14、 13、16、11、9、5。 按行排列成4×4的置乱矩阵P4×4为: 置乱规则:采用非线性置换方法,将图像IM×N。N与置乱矩阵PM。Ⅳ的元素一一对应。将IM×N中的元素对应PM×N中的元素进行置乱。如对4×4的图像I4×4按照上面的P4x4矩阵进行 置乱,I中的第1个元素移到第4个元素位置,第2个元素移到第6个元素位置,…,具体过程为: 3、分块加密 由于经本加密算法加密的彩色图像在以后的处理过程中还要进行JPEG压缩,而JPEG压缩过程中的二维DCT、系数量化以及熵编码都是以8×8块为基本单位进行的,为了不破坏DCT系数的分布概率,并且使Huffman编码表能按最优方式使用,我们将待加密彩色图像的R、G、B3个分量按8×8大小分块,以8×8块为单位分别用置乱矩阵Px,Py,Pz进行空域置乱加密。 4、彩色图像混沌加密算法的实现 (1)彩色图像混沌加密算法的实现 图像加密算法实现步骤为: Step1:输入待加密的彩色图像,分离彩色图像的R、G、B三基色分量。 Step2:对Lorenz混沌序列进行优化处理。输入密钥σ,r,b,x0,yo,z0(xo,yo,zo为初始值),生成x,y,z实值混沌序列,用式(2)对x,y,z混沌序列进行优化,得到x’,y’,z’优化混沌序列。 Step3:将待加密彩色图像的R、G、B3个分量按8×8大小分块,以8×8块为单位生成置乱矩阵Px,Py,Pz。 Step4:空域置乱。按置乱矩阵Px,Py,Pz规则重排三基色分量8×8块的几何位置,实现置乱加密。 Step5:输出置乱彩色图像。合成置乱后的三基色图,即得到加密后的图像。 (2)解密算法实现 用户输入正确的密钥后,将加密算法逆向运算,即可获得解密图像。 二、实验仿真 我们选取大小为512×512的彩色图像Lena作为实验对象(如图1),利用MATLAB 6.5编程实现算法。选取密钥σ=10,r=28,b=8/3,xo=0.5143978026,yo=0.3246981507, zo=0.7021364589。为了增强生成混沌序列的安全性,我们除去序列的初始段,使Lorenz方程预先迭代n=10000次。 图2、图3、图4分别是Lena的三基色分量分解图,图5、图6、图7分别是三基色分量图加密后的图像,图8是将分量图合成为彩色图像后的Lena最终加密图像。

文档评论(0)

1亿VIP精品文档

相关文档