一种基于混沌轨道扰动的数字图像加密方法转让专利

申请号 : CN201110302488.X

文献号 : CN102360488B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 付冲孟威宏索涛马宏峰

申请人 : 付冲索涛

摘要 :

一种基于混沌轨道扰动的数字图像加密方法,涉及加密系统领域,方法如下:采用基于广义离散Baker映射的方法对明文图像进行置乱处理;采用基于Logistic映射的方法对置乱后的图像进行扩散处理,改变图像中每一点的像素值;根据加密强度要求,进行多轮加密,本发明方法通过引入与明文相关的混沌轨道扰动机制,使密钥流不仅与密钥相关,而且与明文相关,因此,加密系统的扩散效果得到了有效提升并且抗已知明文和的能力得到了显著提高;本发明扩散过程中对某个像素值的改变,依赖于该像素点所有前面已加密的像素值的累积效应,因此一个像素值的微小改变,可有效的扩散到图像中后续的所有像素;本发明方法加密时间短。

权利要求 :

1.一种基于混沌轨道扰动的数字图像加密方法,其特征在于:包括以下步骤:步骤1:采用基于广义离散Baker映射的方法对明文图像进行置乱处理,改变图像中每一像素点的位置,具体方法为:步骤1-1:设待加密明文图像的大小为N×N,由加密者设置置乱密钥ni,其中,N表示图像在水平或垂直方向的像素个数,i=0,1,…,k-1,ni可整除N且n0+n1+…+nk-1=N;

步骤1-2:按步骤1-1设置的置乱密钥,将明文图像垂直分割为k个高度为N、宽度为ni的矩形条带,所述i=0,1,…,k-1;采用基于广义离散Baker映射的方法将这些垂直条带在水平方向拉伸,在垂直方向压缩,得到k个高度为ni、宽度为N的水平条带;最后依次将所有经变换得到的水平条带自下而上堆叠在一起,公式如下:式中,Bd表示广义离散Baker映射,(x,y)表示待变换点的坐标,Ni表示垂直条带右下角坐标,其中i=0,1,2,…,k,公式如下:且Ni≤x

步骤2:采用基于Logistic映射的方法对置乱后的图像进行扩散处理,改变图像中每一点的像素值,步骤2-1:由加密者设置扩散密钥(x0,μ),其中,x0表示状态变量初始值,Logistic映射公式如下:xn+1=μxn(1-xn),xn∈[0,1],μ∈[0,4](3)式中,μ表示控制参数,且μ∈[3.57,4]时系统处于混沌状态;xn表示状态变量,xn+1是基于xn生成的下一个迭代值;

将公式(3)迭代N0次,其中,N0表示常量且N0≥200,使系统进入混沌状态;

对于所述的状态变量xn,0.5为不良点,会使状态变量在后续迭代中陷入‘不动点’1,如果该情况出现,则对xn做一个微小的扰动;

所述的微小扰动,即是在xn的基础上加或减一个小数,所述小数的数量级范围在

10-3~10-5;

步骤2-2:继续迭代Logistic映射,并对混沌映射的当前状态变量xn进行量化,得到一个密钥流元素kn,公式如下:kn=mod[floor(xn×1014),L],(4)

式中floor(x)函数返回距离x最近的整数值,mod(x,y)返回x除以y的余数,L为图像的灰度级别;

步骤2-3:利用步骤2-2得到的密钥流元素对一个明文像素实施加密,加密公式为cn=kn⊕{[pn+kn]modL}⊕cn-1,(5)式中,cn表示输出的密文像素值,pn表示当前操作的明文像素值,cn-1为前一个已加密点的密文像素值,设c-1为一个常量,其取值范围为0-255,用于加密第一个像素点,⊕代表按位异或操作,通过使用与明文相关的加密方法,每一个像素点的值都能被有效地扩散到整个密文图像;

步骤2-4:利用步骤2-3得到的密文像素值改变Logistic映射控制参数μ,实现混沌轨道扰动,具体方法如下:判断状态变量值xn是否大于判决门限,若大于判决门限则对控制变量μ增加一个微量值δ,否则将控制变量μ减少一个微量值δ,实现扰动混沌轨道,所述的微量值δ,满足如下公式:δ=cn×0.1/L (6)

所述的微量值与密文像素值cn相关,所述的密文像素值cn与明文像素值pn相关,实现密钥流序列与明文相关,由于Logistic映射的取值范围为[0,1],而其概率密度函数为广义偶函数,且公式如下:因此对μ值的增或减概率是相同的,若μ值增或减后超出了混沌范围[3.57,4.0],则对其减或增0.2,以确保其值在混沌范围内;

步骤2-5:返回步骤2-2,直到置乱图像中的所有像素点按照从左至右,从上至下的顺序被加密;

步骤3:根据加密强度要求,进行多轮加密,反复执行步骤1与步骤2,所述加密强度是指抗统计攻击能力、抗已知明文或选择明文攻击能力以及抗差分攻击能力。

2.根据权利要求1所述的基于混沌轨道扰动的数字图像加密方法,其特征在于:步骤

2-4所述的判决门限的取值为0.5。

说明书 :

一种基于混沌轨道扰动的数字图像加密方法

技术领域

[0001] 本发明涉及加密系统,用于数据与信息保护,特别涉及一种基于混沌轨道扰动的数字图像加密方法。

背景技术

[0002] 随着多媒体与网络技术的飞速发展,越来越多的图像在以Internet,无线网络等为代表的开放性网络中传播,极大的方便了信息的访问与共享,然而由于数字图像信息易于拷贝和发布,在商业、军事、医疗、科研等领域的众多敏感信息易于被截获和破解,其传播存在很大的安全隐患,与文字信息相比,数字图像具有容量大,冗余度高等特点,传统的分组加密方法,如数据加密标准(DES,Data Encryption Standard),国际数据加密算法(IDEA,International Data Encryption Algorithm),高级加密标准(AES,Advanced Encryption Standard)等,并不适合于图像加密,尤其在加密速度方面,不能满足日益增长的实时网络传输的需求。
[0003] 自上世纪90年代以来,很多学者发现混沌学与密码学存在紧密的联系,混沌动力系统的许多基本特性,例如初值与系统参数极端敏感性、遍历性、伪随机性等,可很好的满足现代密码学构建高安全性加密系统的要求,混沌流密码提供了安全性与加密效率的一个良好的平衡,既具有很高的安全性保证,又具有极高的加密速度,非常适合数字图像的实时、安全网络传输,近十年来,混沌加密技术得到了广泛研究,并取得一定成果,现有混沌图像加密方法的通用体系结构如图1所示,加密系统由两个迭代模块组成,分别实现消除相邻像素间的强相关性和改变图像的统计特性:在置乱阶段,图像中每个像素点的位置以被打乱,而保持像素值不变;在扩散阶段,每一点的像素值按从上至下、从左至右的顺序被改变;用于扩散的密钥流基于混沌映射量化产生,像素值的改变通过异或运算实现;加密系统的密钥为控制置乱-扩散过程的混沌映射的初始参数与初始值,为了达到充分消除相邻像素间的相关性的目的,置乱过程共迭代m轮(m≥1),整体置乱-扩散操作可根据安全性需求执行n轮(n≥1),然而,在现有成果中,用于扩散的密钥流仅与密钥相关,即如果密钥不加以更改,相同的密钥流将用于加密不同的明文图像,因此,攻击者可采用已知明文攻击或选择明文攻击手段来破译加密系统,例如,攻击者可构造一幅由特殊像素值构成的明文图像,应用加密系统对该图像进行加密,通过将明文图像与密文图像相比较,可得到使用的密钥流。

发明内容

[0004] 为克服现有方法存在的不足,本发明提供一种基于混沌轨道扰动的数字图像加密方法,在扩散过程中引入与明文相关的混沌轨道扰动机制,根据密文像素值扰动混沌系统的控制参数,达到提升扩散效果、提高加密系统安全性的目的。
[0005] 本发明的技术方案是这样实现的:一种基于混沌轨道扰动的数字图像加密方法,包括以下步骤:
[0006] 步骤1:采用基于广义离散Baker映射的方法对明文图像进行置乱处理,改变图像中每一像素点的位置,具体方法为:
[0007] 步骤1-1:设待加密明文图像的大小为N×N,由加密者设置置乱密钥ni,其中,N表示图像在水平或垂直方向的像素个数,i=0,1,…,k-1,ni可整除N且n0+n1+…+nk-1=N;
[0008] 步骤1-2:按步骤1-1设置的置乱密钥,将明文图像垂直分割为k个高度为N、宽度为ni(i=0,1,…,k-1)的矩形条带;采用基于广义离散Baker映射的方法将这些垂直条带在水平方向拉伸,在垂直方向压缩,得到k个高度为ni、宽度为N的水平条带;最后依次将所有经变换得到的水平条带自下而上堆叠在一起,公式如下:
[0009]
[0010] 式中,Bd表示广义离散Baker映射,(x,y)表示待变换点的坐标,Ni(i=1,2,…,k)表示垂直条带右下角坐标,满足如下公式:
[0011]
[0012] 且Ni≤x<Ni+ni,0≤y≤N;
[0013] 步骤2:采用基于Logistic映射的方法对置乱后的图像进行扩散处理,改变图像中每一点的像素值,方法如下:
[0014] 步骤2-1:由加密者设置扩散密钥(x0,μ),其中,x0表示状态变量初始值,Logistic映射公式如下:
[0015] xn+1=μxn(1-xn),xn∈[0,1],μ∈[0,4] (3)[0016] 式中,μ表示控制参数,且μ∈[3.57,4]时系统处于混沌状态;xn表示状态变量,xn+1是基于xn生成的下一个迭代值;
[0017] 将公式(3)迭代N0次,其中,N0表示常量且N0≥200,使系统完全进入混沌状态;
[0018] 对于所述的状态变量xn,0.5为不良点,会使状态变量在后续迭代中陷入‘不动点’1,如果该情况出现,则对xn做一个微小的扰动;
[0019] 所述的微小扰动,即是在xn的基础上加或减一个小数,所述小数的数量级范围在-3 -510 ~10 ;
[0020] 步骤2-2:继续迭代Logistic映射,并对混沌映射的当前状态变量xn进行量化,得到一个密钥流元素kn,公式如下:
[0021] kn=mod[floor(xn×1014),L], (4)[0022] 式中floor(x)函数返回距离x最近的整数值,mod(x,y)返回x除以y的余数,L为图像的灰度级别;
[0023] 步骤2-3:利用步骤2-2得到的密钥流元素对一个明文像素实施加密,加密公式为[0024]
[0025] 式中,cn表示输出的密文像素值,pn表示当前操作的明文像素值,cn-1为前一个已加密点的密文像素值,设c-1为一个常量,其取值范围为0-255,用于加密第一个像素点,由于在加密第一个像素点时,第一个像素点前没有像素点,因此设置了这样一个常数,用于加密第一个像素点,代表按位异或操作,通过使用与明文相关的加密方法,每一个像素点的值都能被有效地扩散到整个密文图像;
[0026] 步骤2-4:利用步骤2-3得到的密文像素值改变Logistic映射控制参数μ,实现混沌轨道扰动,具体方法如下:判断状态变量值xn是否大于判决门限,若大于判决门限则对控制变量μ增加一个微量值δ,否则将控制变量μ减少一个微量值δ,实现扰动混沌轨道,所述的微量值δ,满足如下公式:
[0027] δ=cn×0.1/L (6)[0028] 所述的微量值与密文像素值cn相关,所述的密文像素值cn与明文像素值pn相关,实现密钥流序列与明文相关,由于Logistic映射的取值范围为[0,1],而其概率密度函数为偶函数,且公式如下:
[0029]
[0030] 因此对μ值的增或减概率是相同的,若μ值增或减后超出了混沌范围[3.57,4.0],则对其减或增0.2,以确保其值在混沌范围内;
[0031] 步骤2-5:返回步骤2-2,直到置乱图像中的所有像素点按照从左至右,从上至下的顺序被加密;
[0032] 步骤3:根据加密强度要求,进行多轮加密,反复执行步骤1与步骤2,所述加密强度是指抗统计攻击能力、抗已知明文或选择明文攻击能力以及抗差分攻击能力;
[0033] 步骤2-4所述的判决门限的取值为0.5;
[0034] 步骤1-2中与所述广义离散Baker映射公式相对应的用于解密的逆Baker映射,公式为:
[0035]
[0036] 步骤2-3中与所述对明文像素实施加密的公式相对应的解密公式为:
[0037]
[0038] 本发明优点:包括以下三方面:
[0039] (1)通过引入与明文相关的混沌轨道扰动机制,使密钥流不仅与密钥相关,而且与明文相关,即使使用相同的扩散密钥,在加密不同的明文图像时,所生成的密钥流也是不同的,因此,加密系统的扩散效果得到了有效提升并且抗已知明文和的能力得到了显著提高;
[0040] (2)扩散过程中对某个像素值的改变,依赖于该像素点所有前面已加密的像素值的累积效应,因此,一个像素值的微小改变,可有效的扩散到图像中后续的所有像素;
[0041] (3)本加密方法的加密速度约为经典的DES分组加密算法的六倍,其加密时间远小于网络传输时延,因此,本方法非常适合用于基于宽带网络的实时安全图像传输。

附图说明

[0042] 图1为本发明基于混沌轨道扰动的数字图像加密方法现有混沌图像加密方法的通用体系结构图;
[0043] 图2为本发明实施例一种基于混沌轨道扰动的数字图像加密方法基于广义离散Baker映射的图像置乱过程示意图;
[0044] 图3为本发明实施例一种基于混沌轨道扰动的数字图像加密方法Logistic映射示意图;
[0045] 图4为本发明实施例一种基于混沌轨道扰动的数字图像加密方法流程图;
[0046] 图5(a)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法512×512像素256级灰度测试图;
[0047] 图5(b)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法经1轮Baker映射后的结果图;
[0048] 图5(c)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法经3轮Baker变换后的结果图;
[0049] 图5(d)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法经5轮Baker变换后的结果图;
[0050] 图6为本发明实施例一种基于混沌轨道扰动的数字图像加密方法加密后的图像示意图;
[0051] 图7(a)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法明文图像三维直方图;
[0052] 图7(b)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法密文图像三维直方图;
[0053] 图8(a)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法明文图像水平相邻像素相关性;
[0054] 图8(b)为本发明实施例一种基于混沌轨道扰动的数字图像加密方法密文图像水平相邻像素相关性;
[0055] 图9为本发明实施例一种基于混沌轨道扰动的数字图像加密方法错误密钥解密的图像;

具体实施方式

[0056] 下面结合附图和实施例对本发明作进一步详细说明。
[0057] 本发明一种基于混沌轨道扰动的数字图像加密方法,其流程如图4所示,包括以下步骤:
[0058] 步骤1:基于广义离散Baker映射完成明文图像的置乱,包括以下步骤:
[0059] 步骤1-1:本实施例选取一张大小为512×512的腹CT图像进行加密,如图5(a)所示,所述图片为256级灰度测试图像,设置该图片的置乱密钥设为{32,16,128,8,64,16,32,8,128,64,16},由11个可被512整除的因子构成;
[0060] 步骤1-2:根据所置密钥,对明文图像5(a)进行Baker映射,经过1轮Baker变换后的图像如图5(b)所示,经过3轮Baker变换后的图像如图5(c)所示,经过5轮Baker变换后的图像如图5(d)所示,从图5可以看出,经过5轮变换后,相邻像素间的相关性几乎被完全消除,图像在视觉上不可识别;
[0061] 步骤2:采用基于Logistic映射的方法对置乱后的图像进行扩散,包括以下步骤:
[0062] 步骤2-1:设置扩散密钥为(0.12056384793179,4.0),迭代Logistic映射N0=200次,迭代过程中得到的状态变量值xn为0.5,则对其加一大小为0.001的扰动;
[0063] 步骤2-2:继续迭代Logistic映射,得到混沌映射的当前状态变量x0=0.78711995553875,对该值进行量化,得到密钥流元素kn=mod[floor(0.78711995553875
14
×10 ),256]=83;
[0064] 步骤2-3:设L与c-1分别为256和128,取待加密的明文像素,其值为pn=0,利用步骤2-2得到的密钥流元素kn对该像素实施加密,得到密文像素值为:
[0065]
[0066] 步骤2-4:根据步骤2-3得到的密文像素值cn=128改变Logistic映射控制参数μ:由于状态变量值xn=0.78711995553875>0.5,因此对控制变量μ增加一微量值μ=μ+δ=μ+cn×0.1/L=4.05,因扰动后μ值超出混沌范围上界,将其值减0.2,最终得到的μ值为3.85;
[0067] 步骤2-5:返回步骤2-2,直到置乱图像中的所有像素点按照从左至右,从上至下的顺序被加密;
[0068] 步骤3:为达到较强的抗统计攻击能力、抗已知明文或选择明文攻击能力以及抗差分攻击能力,执行步骤1与步骤2共计2轮。
[0069] 对本方法构建的图像加密系统进行6种详细的安全性与加密速度分析与测试,包括密钥空间、直方图,相邻像素相关性、信息熵、密钥敏感性以及加密速度,分析结果表明,本方法具有良好的安全性,可有效抵御各类常见的攻击手段,且加密速度可很好的满足基于宽带网络的实时安全图像传输应用:
[0070] (1)密钥空间
[0071] 基于本方法构建的加密系统的密钥由两部分构成:置乱密钥与扩散密钥,置乱密钥总量与图像大小有关,如表1所示:
[0072] 表1不同图像大小对应的置乱密钥数量
[0073]
[0074] 从表1中可以看出,随着图像大小的增加,置乱密钥的总量急速增长,扩散密钥由98
两个浮点数(x0,μ)构成,其总量为2 ,置乱密钥与扩散密钥相互独立,因此,当图像大小
307
为256×256时,总的密钥空间为2 ;
[0075] 表2为本发明方法与三种经典对称加密算法密钥空间的比较:
[0076] 表2本方法与三种经典对称加密算法密钥空间比较
[0077]
[0078] 从表2可以看出,本发明方法的密钥空间远大于各类经典加密方法,可有效抵御穷举攻击。
[0079] (2)直方图
[0080] 直方图直观的描述了一幅图像中像素的分布情况,密文信息的分布应具有较高的随机性、隐藏明文的冗余性并且不能让攻击者从中得到任何有关明文与密文关系的信息,图7(a)和图7(b)分别显示了明文和密文图像的三维直方图,从图7(b)中可以清楚的看到,密文图像的直方图与明文图像相比有显著的差异,呈均匀分布,具有极高的随机性,因此,本发明方法构建的加密系统具有良好的抗统计攻击能力。
[0081] (3)相邻像素相关性
[0082] 对于一个具有明确视觉内容的数字图像,其每一个像素点在水平、垂直以及对角线方向与其相邻像素点都是高度相关的,而对于一个设计良好的图像加密系统而言,其输出的密文图像应该具有足够低的相邻像素相关性,图8为明文图像与密文图像的相邻像素相关性可视化测试,该测试将两相邻像素的像素值分别绘制于x轴和y轴,从图8(a)中可以看出,对于明文图像,其相邻像素的值集中在一对角线上,说明相邻像素间有极强的相关性;而对于密文图像,如图8(b)所示,其相邻像素值均匀分布于整个灰度平面上,说明其相邻像素间已不具有任何相关性,对于垂直方向与对角线方向的可视化测试,可得到相似的结果。
[0083] 为了定量比较明文与密文图像的相邻像素相关性,首先从明文和密文图像在每个相邻方向上随机选取2000对相邻点,然后,使用公式(10)-(13)计算相关系数rx,y公式如下:
[0084]
[0085] cov(x,y)=E(x-E(x))(y-E(y)) (11)[0086]
[0087]
[0088] 式中,x和y分别是图像中两个相邻点的灰度值,N为采样点的个数;
[0089] 明文图像和对应的密文图像在水平、垂直以及对角线方向的相关性如表3所示:
[0090] 表3明文图像与密文图像的相邻像素相关性比较
[0091]
[0092] 从图8(a)、图8(b)和表3可得出,通过使用本加密方法,明文图像中相邻像素间的强相关性在密文图像中得到了有效的消除。
[0093] (4)信息熵
[0094] 信息熵是表征一个信息源随机性与不可预测性的重要指标,对于一个信息源s,其熵为:
[0095]
[0096] 其中N为表示一个码元si∈s所需的比特数,P(si)代表码元si出现的概率,对于N一个由2 个不同码元组成的纯随机信息源,其熵为H(s)=N,因此,对于一个具有256级灰度的密文图像,其信息熵的理论值为H(s)=8,如果输出的密文的熵小于8,则密文存在一定程度的可预测性,将威胁到系统的安全;
[0097] 基于公式(13)计算得出,使用本发明方法加密的明文图像与得到的密文图像的信息熵分别为H(s)=5.3883和H(s)=7.9916,密文图像的熵值非常接近理想值8,说明密文图像的像素值分布具有极高的随机性,因此该方法可有效抵御熵攻击。
[0098] (5)密钥敏感性
[0099] 密钥敏感性意味着两个差异极小的密钥,在加密相同的明文时,将产生完全不同的密文,这个性质对于加密系统是极其重要的,否则攻击者可以通过相近的密钥去恢复部分明文信息,为评测本方法的密钥敏感性,解密时使用的密钥,除了对x0的值由0.8加以微小改变至0.800000000000001以外,对其余部分密钥不做任何改变,解密图像如图9所示。
[0100] 错误解密图像与明文图像的差异度为99.61%,对于密钥的其他部分加以微小的改变,可以得到类似的结果,由此可以得出,基于本发明方法构建的加密系统具有极高的密钥敏感性,即使使用一个与加密密钥具有极其微小差异的解密密钥,也不能解密得到任何明文信息,因此差分攻击对于本方法是无效的。
[0101] (6)加密速度对比测试
[0102] 除了考虑安全性以外,加密速度也是一个衡量加密系统优劣的重要方面,尤其对于实时图像网络传输应用,针对不同大小的图像,使用本发明方法和经典的DES方法的加密速度如表4所示:
[0103] 表4本方法与DES方法加密速度比较
[0104]
[0105] 用于测试的计算机为Intel E4600酷睿2CPU(2.4GHz,2M缓存),2G内存,这里加密时间指的是一个完整的加密流程,除了核心的置乱-扩散时间外,还包括磁盘I/O、密钥流序列生成及预处理等时间,从表4中可以看到,基于本方法的加密系统,其速度约为经典DES加密算法的六倍,其加密时间远小于网络传输时延,因此,本发明方法非常适合用于基于宽带网络的实时安全图像传输。