基于超混沌系统的图像加密方法及装置、解密方法及装置与流程

文档序号:12366975阅读:558来源:国知局
基于超混沌系统的图像加密方法及装置、解密方法及装置与流程
本发明涉及图像加密
技术领域
,特别是涉及一种基于超混沌系统的图像加密方法及装置、解密方法及装置。
背景技术
:随着互联网的日益普及,图像、语音、视频等多媒体数字化信息的交流已越来越具有开放性、自由性和国际性,从而出现了各种各样的信息安全问题。对于数字图像信息而言,由于其数据量大、冗余性高及相关性强等特点,使得传统的加密技术显现出效率低等技术不足,难以满足实时性的要求。近年来随着对混沌理论研究的发展和深入,混沌研究成为了非线性科学领域的热点问题之一。混沌系统以其类噪声及对初值高度敏感的特点,越来越多地被应用到保密通信系统的设计中,并先后提出了许多基于混沌系统的加密算法。较之低维混沌系统,高维混沌系统具有更复杂的动力学行为以及更好的随机性,一般低维的破译方法,如相空间重构、回归映像和非线性预测等很难破译超混沌系统加密的信息,因此,具有2个或2个以上正性Lyapunov指数的超混沌应用研究越来越受到人们的关注。现有的一种基于超混沌系统的图像加密方法(IHIE算法),其核心思想描述如下:首先,利用超混沌系统对图像像素进行置乱,抵御一般低维混沌的破译方法;其次,通过密文反馈方法控制算法中的密钥流,使得加密所需参数通过密文反馈与明文相关,将一个明文字节的影响扩散到更多的密文字节中。该方法的像素值加密阶段只有一轮替代操作,使得一个明文像素值变化只能影响该像素后面的密文像素值;且密文和密钥及明文之间关系不够复杂,因此,其最终加密密钥序列同样可以破解。且该加密方法只针对了灰度图像,而对于彩色图像的加密没有说明。另一种基于超混沌的图像加密算法(HIE算法)的核心思想是利用Logistic混沌映射对像素矩阵进行置乱,然后再通过超混沌产生的密钥流对灰度值进行加密。HIE算法实现简单,对于实时性要求高的加密系统,该算法是一个很好地选择。但是该使用了低维混沌系统对像素置乱,达不到高维混沌的随机性和保密性;一个明文字节只能影响一个密文字节,导致通过选择明文攻击和选择密文攻击能够很容易得破译密文;且该加密方法只针对灰度图像,对彩色图像的加密没有说明。技术实现要素:本发明的目的是提供一种基于超混沌系统的图像加密方法及装置、解密方法及装置,目的在于对彩色图像进行加解密,以提高混沌系统在图像加密操作中的保密性以及安全性。为解决上述技术问题,本发明提供一种基于超混沌系统的图像加密方法,包括:对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;通过所述像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;根据所述像素置乱的密钥,对所述扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。可选地,所述对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像包括:将大小为M×N×3的原始彩色图像的R、G、B三色素分别存放在R、G、B三个M×N的二维矩阵中,按照下述计算步骤,对R、G、B分量重新编排,得到编排后的图像imM×3N:S11:根据下式计算X、Y的值:XY=1abab+1ij,(1≤i≤M,1≤j≤3N)]]>X=mod(X,M)+1;Y=mod(Y,3N)+1;其中,a、b为系统的控制参数,mod函数为求余函数;S12:判断得到的X、Y值,如果0<Y<(N+1),则把R(X,Y)赋值给im(i,j);如果N<Y<(2N+1),则把G(X,Y-N)赋值给im(i,j);如果2N<Y<(3N+1),则把B(X,Y-2N)赋值给im(i,j);重复步骤S11、S12,直到R、G、B所有元素编排完成。可选地,通过超混沌系统获取像素扩散的密钥矩阵KM×(3N+4)包括:S21:超混沌系统预迭代N01次,消除暂态过程带来的有害效应,并增强算法对初始密钥的敏感性;初始化空序列B;S22:超混沌系统迭代一次,得到一组新的状态值{x,y,z,w},并计算m=mod(abs(x+y+z+w),3),若m=0,将{x,y,z,w}加入序列B;若m=1,将{x,z,y,w}加入序列B;若m=2,将{w,x,z,y}加入序列B;S23:重复M×(3N/4+1)次S22,生成一个大小为M×(3N+4)的原始超混沌序列矩阵B;S24:按照变换式K(i,j)=mod(floor((abs(B(i,j))-floor(abs(B(i,j))))×1014),256)1≤i≤M,1≤j≤(3N+4)对混沌序列B进行改造,得到像素扩散的密钥矩阵KM×(3N+4)。可选地,通过超混沌系统获取像素置乱的密钥包括:将超混沌系统迭代N02次,消除暂态过程带来的有害效应,并增强算法对初始密钥的敏感性;初始化一空序列R、V;利用超混沌系统迭代产生数据,然后计算R(i)=mod(floor((abs(x)-floor(abs(x)))×1014),M)+1(1≤i≤M),R(i)∈[1,M],迭代超混沌系统,直到产生M个完全不同的整数R值;计算V(i)=mod(floor((abs(x)-floor(abs(x)))×1014),3N)+1(1≤i≤3N),V(i)∈[1,3N],迭代超混沌系统,直到产生3N个完全不同的整数V值;得到像素置乱的密钥R、V。可选地,所述通过所述像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像包括:S31:按照下述公式对图像进行扩散处理,式中当(i=1,j=1)时,C(i,j-1)设为[0,255]之间的整数C0,可视为系统密钥的一部分;当(1<i≤M,j=1)时,令C(i,j-1)=C(i-1,3N):temp1=mod(im(i,j)⊕K(i,j),256)temp2=mod(K(i,j+1)⊕C(i,j-1),256)C(i,j)=temp1⊕temp2(1≤i≤M,1≤j≤3N)]]>S32:重复L轮步骤S31,直到输出图像的像素分布均匀为止。可选地,所述根据所述像素置乱的密钥,对所述扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像包括:根据所述像素置乱的密钥R、V,对扩散图像进行行列置乱P(i,j)=C(R(i),V(j)),(1≤i≤M,1≤j≤3N),得到加密后图像PM×3N。本发明还提供了一种基于超混沌系统的图像解密方法,包括:获取加密过程中产生的像素扩散的密钥矩阵以及像素置乱的密钥;通过所述像素置乱的密钥,对加密后图像进行像素反置乱处理;通过所述像素扩散的密钥矩阵对经像素反置乱处理后的图像进行反扩散操作;对经反扩散操作处理后的图像进行与加密过程中预处理操作对应的反预处理操作,获取解密后彩色图像。本发明还提供了一种基于超混沌系统的图像加密装置,包括:预处理模块,用于对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;第一密钥获取模块,用于通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;扩散操作模块,用于通过所述像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;置乱操作模块,用于根据所述像素置乱的密钥,对所述扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。本发明还提供了一种基于超混沌系统的图像解密装置,包括:第二密钥获取模块,用于获取加密过程中产生的像素扩散的密钥矩阵以及像素置乱的密钥;反置乱操作模块,用于通过所述像素置乱的密钥,对加密后图像进行像素反置乱处理;反扩散操作模块,用于通过所述像素扩散的密钥矩阵对经像素反置乱处理后的图像进行反扩散操作;反预处理模块,用于对经反扩散操作处理后的图像进行与加密过程中预处理操作对应的反预处理操作,获取解密后彩色图像。本发明所提供的基于超混沌系统的图像加密方法及装置,通过对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;通过像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;根据像素置乱的密钥,对扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。此外,本发明还提供了一种基于超混沌系统的图像解密方法及装置。本发明所提供的加解密方法及装置,使得密文、密钥、明文紧密联系,具有良好的扩散效果,大大提高图像加密的保密性和安全性。附图说明为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明所提供的基于超混沌系统的图像加密方法的一种具体实施方式的流程图;图2为本发明所提供的基于超混沌系统的图像加密方法的具体实现过程示意图;图3为本发明所提供的基于超混沌系统的图像解密方法的一种具体实施方式的流程图;图4为本发明实施例提供的基于超混沌系统的图像加密装置的结构框图;图5为本发明实施例提供的基于超混沌系统的图像解密装置的结构框图;图6(a)-(d)为算法加密解密效果图,其中,图6(a)为原始图像,图6(b)为扩散图像,图6(c)为扩散加置乱图像即密文图像,图6(d)为解密图像;图7(a)(b)分别为原始明文图像和密文图像对应的直方图。具体实施方式为了使本
技术领域
的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明所提供的基于超混沌系统的图像加密方法的一种具体实施方式的流程图如图1所示,该方法包括:步骤S101:对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;步骤S102:通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;步骤S103:通过所述像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;步骤S104:根据所述像素置乱的密钥,对所述扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。本发明所提供的基于超混沌系统的图像加密方法,通过对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;通过像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;根据像素置乱的密钥,对扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。本发明所提供的方法使得密文、密钥、明文紧密联系,具有良好的扩散效果,大大提高图像加密的保密性和安全性。请参照图2本发明所提供的基于超混沌系统的图像加密方法的具体实现过程示意图,下面对本发明的实施过程进行进一步详细阐述。需要指出的是,本算法是基于超混沌系统的图像加密方法,超混沌系统维数越多、正性Lyapunov指数越多、动力学特性越复杂,其加密效果越好。为了说明本算法,具体的仿真试验中可以采用如下四维超混沌系统:x·=ax-yzy·=xz-byz·=cxy-dz+gxww·=kw-hy]]>其中a、b、c、d、g、h和k为系统的控制参数,在a=8、b=40、c=2、d=14、g=5、h=0.2和k=0.05的条件下,系统表现为超混沌运动,超混沌吸引子有四个涡卷,表现出比一般超混沌系统具有更加复杂的动力学特性,从安全性角度考虑,由于其相空间轨迹更加复杂,因此用它产生密钥序列较为安全。在上述实施例的基础上,本发明所提供的基于超混沌系统的图像加密方法中,对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像的过程可以具体包括:将大小为M×N×3的原始彩色图像的R、G、B三色素分别存放在R、G、B三个M×N的二维矩阵中,按照下述计算步骤,对R、G、B分量重新编排,得到编排后的图像imM×3N:S11:根据下式计算X、Y的值:XY=1abab+1ij,(1≤i≤M,1≤j≤3N)]]>X=mod(X,M)+1;Y=mod(Y,3N)+1;其中,a、b为系统的控制参数,mod函数为求余函数;S12:判断得到的X、Y值,如果0<Y<(N+1),则把R(X,Y)赋值给im(i,j);如果N<Y<(2N+1),则把G(X,Y-N)赋值给im(i,j);如果2N<Y<(3N+1),则把B(X,Y-2N)赋值给im(i,j);重复步骤S11、S12,直到R、G、B所有元素编排完成。在MATLAB中,mod函数是求余,数字彩色图像的编排处理将会使密钥具有更大的空间,而且也打乱了数字彩色图像的R、G、B之间的相关性,这会大大提高图像加密系统的安全性,增加破解的难度。进一步地,通过超混沌系统获取像素扩散的密钥矩阵可以具体包括:S21:超混沌系统预迭代N01次,消除暂态过程带来的有害效应,并增强算法对初始密钥的敏感性;初始化空序列B;S22:超混沌系统迭代一次,得到一组新的状态值{x,y,z,w},并计算m=mod(abs(x+y+z+w),3),若m=0,将{x,y,z,w}加入序列B;若m=1,将{x,z,y,w}加入序列B;若m=2,将{w,x,z,y}加入序列B;S23:重复M×(3N/4+1)次S22,生成一个大小为M×(3N+4)的原始超混沌序列矩阵B;S24:按照变换式K(i,j)=mod(floor((abs(B(i,j))-floor(abs(B(i,j))))×1014),256)1≤i≤M,1≤j≤(3N+4)对混沌序列B进行改造,得到像素扩散的密钥矩阵KM×(3N+4)。通过超混沌系统获取像素置乱的密钥可以具体包括:将超混沌系统迭代N02次,消除暂态过程带来的有害效应,并增强算法对初始密钥的敏感性;初始化一空序列R、V;利用超混沌系统迭代产生数据,然后计算R(i)=mod(floor((abs(x)-floor(abs(x)))×1014),M)+1(1≤i≤M),R(i)∈[1,M],迭代超混沌系统,直到产生M个完全不同的整数R值;计算V(i)=mod(floor((abs(x)-floor(abs(x)))×1014),3N)+1(1≤i≤3N),V(i)∈[1,3N],迭代超混沌系统,直到产生3N个完全不同的整数V值;得到像素置乱的密钥R、V。在上述实施例的基础上,步骤S103通过所述像素扩散的密钥矩阵KM×(3N+4)对编排后的图像imM×3N进行像素扩散处理,得到像素分布均匀的扩散图像CM×3N的过程可以具体包括:S31:按照下述公式对图像进行扩散处理,式中当(i=1,j=1)时,C(i,j-1)设为[0,255]之间的整数C0,可视为系统密钥的一部分;当(1<i≤M,j=1)时,令C(i,j-1)=C(i-1,3N):temp1=mod(im(i,j)⊕K(i,j),256)temp2=mod(K(i,j+1)⊕C(i,j-1),256)C(i,j)=temp1⊕temp2(1≤i≤M,1≤j≤3N)]]>S32:重复L轮步骤S31,直到输出图像的像素分布均匀为止。作为一种具体实施方式,步骤104根据所述像素置乱的密钥R、V,对所述扩散图像CM×3N进行矩阵变换,以变换图像像素的排列位置,获取加密后图像PM×3N的过程可以包括:根据所述像素置乱的密钥R、V,对扩散图像进行行列置乱P(i,j)=C(R(i),V(j)),(1≤i≤M,1≤j≤3N),得到加密后图像PM×3N。解密过程为加密过程的逆过程。如图3本发明所提供的基于超混沌系统的图像解密方法的一种具体实施方式的流程图所示,该方法包括:步骤S201:获取加密过程中产生的像素扩散的密钥矩阵以及像素置乱的密钥;步骤S202:通过所述像素置乱的密钥,对加密后图像进行像素反置乱处理;步骤S203:通过所述像素扩散的密钥矩阵对经像素反置乱处理后的图像进行反扩散操作;步骤S204:对经反扩散操作处理后的图像进行与加密过程中预处理操作对应的反预处理操作,获取解密后彩色图像。具体地,与上述加密过程的实施例相对应,解密的过程为:首先利用相同的参数、初始值产生相同的置乱序列R、V,对密文图像进行反置乱,得到矩阵C;然后利用超混沌系统得到相同的密钥矩阵KM×(3N+4),根据下列式子循环L轮得到R、G、B排列组合后的图像imM×3N,式中当(i=1,j=1)时,im(i,j-1)=C0;当(i>1,j=1)时,im(i,j-1)=im(i-1,3N):temp1=mod(C(i,j)⊕K(i,j),256)temp2=mod(K(i,j+1)⊕im(i,j-1),256)im(i,j)=temp1⊕temp2(1≤i≤M,1≤j≤3N)]]>最后需要对图像imM×3N做反编排处理,具体步骤如下:(1)按照下式计算X、Y:XY=1abab+1ij,(1≤i≤M,1≤j≤3N)]]>X=mod(X,M)+1;Y=mod(Y,3N)+1;(2)判断得到的X、Y值,如果0<Y<(N+1),则把im(i,j)赋值给R(X,Y);如果N<Y<(2N+1),则把im(i,j)赋值给G(X,Y-N);如果2N<Y<(3N+1),则把im(i,j)赋值给B(X,Y-2N);(3)重复步骤(1)(2),直到R、G、B所有元素反编排完成。将反编排处理的R、G、B三个二维矩阵组合成三维矩阵输出,就是原始彩色图像。下面对本发明实施例提供的基于超混沌系统的图像加密装置以及基于超混沌系统的图像解密装置进行介绍,下文描述的加密及解密装置与上文描述的加密及解密方法可相互对应参照。图4为本发明实施例提供的基于超混沌系统的图像加密装置的结构框图,参照图4基于超混沌系统的图像加密装置可以包括:预处理模块100,用于对原始彩色图像的各颜色分量R、G、B进行随机性编排处理,得到编排后的图像;第一密钥获取模块200,用于通过超混沌系统获取像素扩散的密钥矩阵以及像素置乱的密钥;扩散操作模块300,用于通过所述像素扩散的密钥矩阵对编排后的图像进行像素扩散处理,得到像素分布均匀的扩散图像;置乱操作模块400,用于根据所述像素置乱的密钥,对所述扩散图像进行矩阵变换,以变换图像像素的排列位置,获取加密后图像。图5为本发明实施例提供的基于超混沌系统的图像解密装置的结构框图,参照图5基于超混沌系统的图像解密装置可以包括:第二密钥获取模块500,用于获取加密过程中产生的像素扩散的密钥矩阵以及像素置乱的密钥;反置乱操作模块600,用于通过所述像素置乱的密钥,对加密后图像进行像素反置乱处理;反扩散操作模块700,用于通过所述像素扩散的密钥矩阵对经像素反置乱处理后的图像进行反扩散操作;反预处理模块800,用于对经反扩散操作处理后的图像进行与加密过程中预处理操作对应的反预处理操作,获取解密后彩色图像。本申请在MATLAB12.0下进行了仿真,预处理参数选择a=min(M,N)-126,b=min(M,N)-389;超混沌系统参数取a=8、b=40、c=2、d=14、g=5、h=0.2和k=0.05,取系统状态初值为(0.12,0.23,0.34,0.45);微分方程迭代求解的时间步长取0.001,N0=1000,C0=75。图6(a)-(d)给出了算法加密解密效果图,其中,图6(a)为原始图像,图6(b)为扩散图像,图6(c)为扩散加置乱图像即密文图像,图6(d)为解密图像。图7(a)-(b)分别给出了原始明文图像和密文图像对应的直方图,由图7(a)可见,原始明文彩图的像素分布是非常不均匀的,但图7(b)表明,加密后图像像素值都已经呈均匀而平坦的分布,表明密文图像的像素值取各种可能值的概率趋于均等。因此本算法能够有效地抵抗统计分析的攻击。综上所述,本发明所提供的方法及装置具有下述优点:将彩色图像RGB的全新编排方法和复杂的超混沌加密算法相结合,扩大了密钥空间;采用先扩散后置乱的方法,扩散的加密公式复杂,密文和明文、密钥关系复杂,置乱密钥序列与明文相关,且与扩散过程相关,攻击者无法通过特殊明、密文对破解置乱密钥,进而无法破解出扩散过程密钥,能有效抵抗选择明、密文对攻击;相较于IHIE算法,本发明方法对全部像素的扩散操作有多轮,使得最终密文对明文的敏感性很强。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或
技术领域
内所公知的任意其它形式的存储介质中。以上对本发明所提供的基于超混沌系统的图像加密方法及装置、解密方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1