CN106778304B - 一种具有明文相关置乱机制的快速混沌图像加密方法 - Google Patents
一种具有明文相关置乱机制的快速混沌图像加密方法 Download PDFInfo
- Publication number
- CN106778304B CN106778304B CN201611128972.4A CN201611128972A CN106778304B CN 106778304 B CN106778304 B CN 106778304B CN 201611128972 A CN201611128972 A CN 201611128972A CN 106778304 B CN106778304 B CN 106778304B
- Authority
- CN
- China
- Prior art keywords
- image
- encrypted
- num
- dimensional array
- scrambling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000000739 chaotic effect Effects 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000009792 diffusion process Methods 0.000 claims abstract description 57
- 238000013507 mapping Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000012360 testing method Methods 0.000 abstract description 29
- 238000004422 calculation algorithm Methods 0.000 abstract description 19
- 238000004458 analytical method Methods 0.000 abstract description 17
- 230000035945 sensitivity Effects 0.000 abstract description 9
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 238000005291 chaos (dynamical) Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Storage Device Security (AREA)
- Facsimile Transmission Control (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提出一种具有明文相关置乱机制的快速混沌图像加密方法,属于图像处理技术领域,本发明其置乱算法基于像素点交换机制,交换目标的位置由logistic混沌映射生成;置乱密钥,即logistic映射的初始状态,由明文图像的City哈希值所确定;基于哈希函数的雪崩特性和混沌***对初值的极端敏感性,两幅明文图像间即使只存在微小的差异,也将产生完全不同的置乱效果;这种与明文相关的置乱方法可有效加速扩散过程,并提高扩散强度;扩散性能分析测试表明,本发明方法通过降低相对耗时的扩散过程所需的迭代轮数,获得了加密速度的提升。
Description
技术领域
本发明属于图像处理技术领域,具体涉及一种具有明文相关置乱机制的快速混沌图像加密方法。
背景技术
近年来,数字图像已成为人们进行信息交流的重要手段。与此同时,图像信息在开放网络环境下的传输存在着巨大的安全隐患,因此对图像信息进行加密至关重要。而在密码学领域中,现代密码学中的经典算法已越来越不能满足日益增长的图像实时安全传输的需求。混沌理论的出现为密码学提供了一个全新的思路。混沌***具有的初值与***参数极端敏感性、遍历性、轨道不可预测性以及良好的伪随机性等一系列与密码学相契合的优良特性。目前,混沌图像加密算法已成为图像信息安全的主流技术和研究热点,具有极大的应用潜力。
1998年,美国学者Jessica Fridrich首次提出了一种通用的图像加密架构,该架构通过“置乱”与“扩散”两个核心模块实现。在置乱阶段,图像中每个像素点位置以一种伪随机的方式被打乱;在扩散阶段,加密***更改每个像素点的像素值并将其影响扩散至整个密文图像。在其后十余年间,世界各国学者以Fridrich所提出的架构为基础,对基于混沌的数字图像加密技术已经进行了广泛深入的研究,取得了诸多成果。与此同时,针对此项技术的密码学分析工作也蓬勃展开。近年来学者们相继发现在现有的很多方案中,存在以下共性不足:
(1)混沌***是一种非线性非周期***,但经离散化的混沌***一般不再具有非周期性。这意味着一幅图像在经离散混沌映射置乱若干轮后,有可能回到其初始状态,从而失去了置乱的意义。
(2)对于cat、baker以及standard等常用映射,坐标点(0,0)为不动点。为克服此问题,需要对这些不动点进行专门的处理,而这导致了***的运算量增加。
(3)现有的保面积可逆混沌映射,如cat映射,baker映射以及standard映射,只能应用于正方形图像。对于更为一般的长方形图像,必须首先将其转换为正方形,这同样增加了***的运算量。
(4)扩散操作具有较高的计算负载,是影响混沌加密***整体效率的最主要因素。面对当前越来越多的高分辨率图像的实时网络传输应用,传统混沌加密算法所引入的时延是不可忽略的。
发明内容
针对现有技术的不足,本发明提出了一种具有明文相关置乱机制的快速混沌图像加密方法,其置乱算法基于像素点交换机制,交换目标的位置由logistic混沌映射生成;置乱密钥,即logistic映射的初始状态,由明文图像的City哈希值所确定;基于哈希函数的雪崩特性和混沌***对初值的极端敏感性,两幅明文图像间即使只存在微小的差异,也将产生完全不同的置乱效果;这种与明文相关的置乱方法可有效加速扩散过程,并提高扩散强度;扩散性能分析测试表明,本发明方法通过降低相对耗时的扩散过程所需的迭代轮数,获得了加密速度的提升。
一种具有明文相关置乱机制的快速混沌图像加密方法,包括以下步骤:
步骤1、设置logistic映射的控制参数、Lü***的控制参数和扩散密钥;
步骤2、按由上至下、由左至右的顺序,将待加密图像每个像素的三个颜色分量的值依次存入一个一维数组中;
步骤3、根据所获得的待加密图像一维数组,对明文图像进行置乱处理,具体如下:
步骤3-1、根据所获得的待加密图像一维数组获得City哈希值;
步骤3-2、根据获得的City哈希值,设置logistic映射的状态变量初值;
步骤3-3、根据设置的logistic映射的状态变量初值和控制参数,预迭代logistic映射使其充分进入混沌状态;
步骤3-4、正式迭代logistic映射,将每次迭代得到的状态变量值依次放入一维数组中,获得logistic映射状态变量数组,该状态变量数组的长度为:待加密图像一维数组的长度-1;
步骤3-5、对logistic映射状态变量数组进行量化,得到伪随机置乱序列,该序列中的每个元素表示待交换元素所在位置;
步骤3-6、根据伪随机置乱序列中每个元素的对应位置,将待加密图像一维数组中的每一个元素与对应位置的元素相交换,待加密图像一维数组中最后一个元素不做置乱处理;
步骤4、将置乱处理后的待加密图像一维数组进行扩散处理,具体如下:
步骤4-1、生成扩散密钥流序列,该序列的长度为:待加密图像一维数组的长度;
步骤4-2、根据扩散密钥流序列,对置乱处理后的待加密图像一维数组中的每一个元素实施加密;
步骤5、反复执行步骤3至步骤4,进行多轮加密,获得密文图像。
步骤3-2所述的根据获得的City哈希值,设置logistic映射的状态变量初值,具体公式如下:
x′0=hashp/232 (1)
其中,x′0表示logistic映射的状态变量初值,hashp表示待加密图像一维数组P的City哈希值。
步骤3-3所述的根据设置的logistic映射的状态变量初值和控制参数,迭代logistic映射使其充分进入混沌状态,具体公式如下:
x′n+1=μx′n(1-x′n),x′n∈[0,1],μ∈[0,4] (2)
其中,μ表示logistic映射的控制参数,x′n表示logistic映射第n次迭代的状态变量值,其初始值为x′0。
步骤3-5所述的对logistic映射状态变量数组进行量化,得到伪随机置乱序列,该序列中的每个元素表示待交换元素所在位置,具体公式如下:
其中,rn表示待加密图像一维数组P中元素pn待交换位置,pos(qn)函数表示元素qn在logistic映射状态变量数组Q={q0,q1,...,q3×W×H-2}中的位置,即n;abs(qn)函数表示元素qn的绝对值;sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数,len(P)表示待加密图像一维数组P的长度。
步骤4-1所述的生成扩散密钥流序列,具体如下:
步骤4-1-1、预迭代Lü***,使其充分进入混沌状态;
步骤4-1-2、正式对Lü***进行迭代,将每次迭代获得的3个状态变量存入一维数组,获得Lü***状态变量数组,该数组的长度与待加密图像一维数组相同;
步骤4-1-3、对Lü***状态变量数组进行量化,获得扩散密钥流序列;
所述的扩散密钥流序列为K={k0,k1,...,k3×W×H-1},具体公式如下:
ke=mod[sig((abs(se),m),28]. (4)
其中,ke表示扩散密钥流序列中第e个元素,e=0,1,…,3×W×H-1,W表示待加密图像的宽度,H表示待加密图像的高度,sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数。
步骤4-2所述的根据扩散密钥流序列,对置乱处理后的待加密图像一维数组中的每一个元素实施加密;
加密公式,具体如下:
其中,ce表示对置乱处理后的待加密图像一维数组中第e个元素p′e加密得到的密文值,ke表示扩散密钥流序列中第e个元素,e=0,1,…,3×W×H-1,W表示待加密图像的宽度,H表示待加密图像的高度,mod(num1,num2)函数表示num1除以num2的余数,ce-1表示前一个元素的密文值,初始值c-1为取值范围在[0,28]的整型常量,表示按位异或操作。
本发明优点:
(1)有效解决了目前最为常用的基于保面积可逆混沌映射方法中存在的三个缺陷,即:(a)混沌映射离散化后存在的周期性;(b)存在不动点(0,0);(c)只能应用于正方形图像。
(2)通过引入与明文相关的置乱机制,有效加速了扩散过程,并提高了扩散强度。扩散性能分析测试表明,本发明提出的加密方法,通过1轮扩散操作即可获得理想的NPCR与UACI指标,而对于传统加密算法,需要2轮扩散操作才能达到理想的NPCR指标、需要3轮扩散操作才能达到理想的UACI指标,即:本发明方法通过降低相对耗时的扩散过程所需的迭代轮数,获得了加密速度的提升。
附图说明
图1为本发明一种实施例的具有明文相关置乱机制的快速混沌图像加密方法流程图;
图2为本发明一种实施例的加密架构示意图;
图3为本发明一种实施例的待处理图像示意图;
图4为本发明一种实施例的对图3进行置乱后的图像示意图;
图5为本发明一种实施例的经置乱一轮、扩散一轮后,得到的加密图像示意图;
图6为本发明一种实施例的参与测试的5幅标准图像,其中,图(a)为第一幅图,图(b)为第二幅图,图(c)为第三幅图,图(d)为第四幅图,图(e)为第五幅图;
图7为本发明一种实施例的图6的直方图分析示意图,其中,图(a)第一幅图明文图像;图(b)为图(a)的R分量示意图,图(c)为图(a)的G分量示意图,图(d)为图(a)的B分量示意图,图(e)为图(b)的直方图,图(f)为图(c)的直方图,图(g)为图(d)的直方图,图(h)为第一幅图密文图像,图(i)为图(h)的R分量示意图,图(j)为图(h)的G分量示意图,图(k)为图(h)的B分量示意图,图(1)为图(i)的直方图,图(m)为图(j)的直方图,图(n)为图(k)的直方图;
图8为本发明一种实施例的相邻像素相关性可视化测试结果示意图,其中,图(a)为第一幅图明文图像的R色彩分量的水平方向相邻像素相关性;图(b)为第一幅图明文图像的G色彩分量的水平方向相邻像素相关性;图(c)为第一幅图明文图像的B色彩分量的水平方向相邻像素相关性,图(d)为第一幅图密文图像的R色彩分量的水平方向相邻像素相关性,图(e)为第一幅图密文图像的G色彩分量的水平方向相邻像素相关性,图(f)为第一幅图密文图像的B色彩分量的水平方向相邻像素相关性;
图9为本发明一种实施例的密钥敏感性测试结果示意图,其中,图(a)第一幅图密文图像,图(b)为使用正确密钥对图(a)解密结果示意图;图(c)为使用第一错误密钥对图(a)解密结果示意图,图(d)为使用第二错误密钥对图(a)解密结果示意图,图(e)为使用第三错误密钥对图(a)解密结果示意图;图(f)为使用第四错误密钥对图(a)解密结果示意图。
具体实施方式
下面结合附图对本发明一种实施例做进一步说明。
本发明实施例中,如图1和图2所示,具有明文相关置乱机制的快速混沌图像加密方法,本发明实施例中,不失一般性,如图3所示,输入的24位真彩色图像的大小为W×H,其宽度W=512,高度H=512;包括以下步骤:
步骤1、设置logistic映射的控制参数、Lü***的控制参数和扩散密钥;
本发明实施例中,将logistic映射的控制参数μ设为4,即:使logistic映射工作在满射状态;将Lü***的控制参数设为a=36,b=3,c=28.7。由加密者设置扩散密钥,即Lü***的状态变量初始值(x0,y0,z0),(x0=-2.7855439058107,y0=5.4692814798081,z0=9.5754137484743);
步骤2、按由上至下、由左至右的顺序,将待加密图像每个像素的三个颜色分量的值依次存入一个一维数组中;
本发明实施例中,将待加密图像像素按由上至下、由左至右的顺序展开至一个一维数组中,记为:P={p0,p1,...,p3×W×H-1},其中p0,p1,p2代表第一个像素点的三个颜色分量的值,p3,p4,p5代表第二个像素点的三个颜色分量的值,以此类推;本发明实施例中,P={39,46,66,...};
步骤3、根据所获得的待加密图像一维数组,对明文图像进行置乱处理,具体如下:
步骤3-1、根据所获得的待加密图像一维数组获得City哈希值;
本发明实施例中,计算待加密图像一维数组P的32位City哈希值,记为hashp,City哈希为Google公司于2011年发布的一种高效哈希函数;hashp=0x8132b810,即十进制的2167584784:
步骤3-2、根据获得的City哈希值,设置logistic映射的状态变量初值;
具体公式如下:
x′0=hashp/232 (1)
其中,x′0表示logistic映射的状态变量初值,hashp表示待加密图像一维数组P的City哈希值;
本发明实施例中,显然,x′0为一取值范围在(0,1)之间的实数,满足logistic映射的约束条件。需要说明的是:当logistic的参数μ取4时,0.5和0.75为映射的“不动点”,即状态变量会在后续迭代中恒定为0和0.75。如果该情况出现,则对x′的值做一个微小的扰动,例如增加或减小0.001;本发明实施例中,x′0=2167584784/232=0.504680160433054;
步骤3-3、根据设置的logistic映射的状态变量初值和控制参数,预迭代logistic映射I0次(I0为常量,一般取I0≥200,本发明实施例中取值为200),使其充分进入混沌状态;具体公式如下:
x′n+1=μx′n(1-x′n),x′n∈[0,1],μ∈[0,4] (2)
其中,μ表示logistic映射的控制参数,x′n表示logistic映射第n次迭代的状态变量值,其初始值为x′0;
步骤3-4、正式迭代logistic映射Lp次,将每次迭代得到的状态变量值x′n依次放入一维数组Q={q0,q1,...,q3×W×H-2}中,获得logistic映射状态变量数组,该状态变量数组的长度为:待加密图像一维数组的长度-1;Lp=len(P)-1,本发明实施例中,len(P)=512×512×3=786432,Lp=786431;
本发明实施例中,logistic映射状态变量数组Q={0.245056765484644,0.740015788699392,0.769569684700036,...};
步骤3-5、对logistic映射状态变量数组Q进行量化,得到伪随机置乱序列R={r0,r1,...,r3×W×H-2},该序列中的每个元素表示待交换元素所在位置;具体公式如下:
其中,rn表示待加密图像一维数组P中元素pn待交换位置,pos(qn)函数表示元素qn在logistic映射状态变量数组Q={q0,q1,...,q3×W×H-2}中的位置,即n;abs(qn)函数表示元素qn的绝对值;sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数,len(P)表示待加密图像一维数组P的长度;
本发明实施例中,本加密***在实现时,所有的状态变量均被定义为双精度浮点数(64位double型),根据计算机表达精度,m设为15;由式(3)可知,rn的取值范围为[(n+1),(len(P)-1)],即:待加密图像一维数组P中每一个元素的交换目标从其后面的所有元素中(伪)随机选择。本发明实施例中,伪随机置乱序列R={236047,206353,180528,...}
本发明实施例中,将p0与p236047交换,p1与p206353交换,p2与p180528交换,其余点的交换以此类推;
本发明实施例中,对图3进行置乱后的图像如图4所示;
步骤4、将置乱处理后的待加密图像一维数组进行扩散处理,具体如下:
步骤4-1、生成长度为Ld=len(P)的扩散密钥流序列;具体如下:
步骤4-1-1、预迭代Lü***I0次(I0为常量,一般取I0≥200,本发明实施例中取值为200),使其充分进入混沌状态;
Lü***公式如下:
其中,x,y,z为***的状态变量,a,b,c为***的控制参数。当a=36,b=3,c∈(12.7,17.0)∪(18.0,22.0)∪(23.0,28.5)∪(28.6,29.0)∪(29.334,29.345)时,***处于混沌状态。
对方程(4)的求解采用四阶龙格-库塔(Runge-Kutta)法,其公式为:
其中,
(j=1)
(j=2,3)
(j=4)
h为步长,此处取0.005。xn,yn,zn代表从上一组状态变量xn-1,yn-1,zn-1得到的状态变量新的当前值;
步骤4-1-2、正式对Lü***进行迭代,将每次迭代获得的3个状态变量xn,yn,zn存入一维数组S={s0,s1,...,s3×W×H-1},获得Lü***状态变量数组,该数组的长度与待加密图像一维数组相同;
本发明实施例中,Lü***状态变量数组S={-12.5096110031813,-14.7503285623033,28.2778233337593,...};
步骤4-1-3、对Lü***状态变量数组进行量化,获得扩散密钥流序列;
所述的扩散密钥流序列为K={k0,k1,...,k3×W×H-1},具体公式如下:
ke=mod[sig((abs(se),m),28]. (5)
其中,ke表示扩散密钥流序列中第e个元素,e=0,1,…,3×W×H-1,W表示待加密图像的宽度,H表示待加密图像的高度,sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数。
本发明实施例中,K={197,249,249,...};
步骤4-2、根据扩散密钥流序列,对置乱处理后的待加密图像一维数组中的每一个像素点实施加密;
加密公式,具体如下:
其中,ce表示对置乱处理后的待加密图像一维数组中第e个元素p′e加密得到的密文值,ke表示扩散密钥流序列中第e个元素,e=0,1,…,3×W×H-1,W表示待加密图像的宽度,H表示待加密图像的高度,mod(num1,num2)函数表示num1除以num2的余数,ce-1表示前一个元素的密文值,初始值c-1为取值范围在[0,28]的整型常量,表示按位异或操作;在对像素的加密过程中,由于ce-1的引入,每一个像素点元素的影响都能被有效地扩散至后续所有的像素点元素中;
用于解密的公式(6)的逆变换为:
本发明实施例中,c-1设为128,对置乱后的p′0进行加密,得到的密文值为:
其余像素色彩分量的加密以此类推;
步骤5、反复执行步骤3至步骤4,进行多轮加密,获得密文图像。
本发明实施例中,经置乱一轮、扩散一轮后,得到的加密图像如图5所示。
加密***安全性与效率测试分析
对本发明所提出的***进行全面的安全性能分析与测试并对结果进行分析,以验证其有效性及性能优势。具体测试项目包括:
①置乱算法性能分析;
②扩散算法性能分析;
③抗穷举攻击(密钥空间)分析;
④抗统计攻击分析(包括直方图,相邻像素相关性、信息熵);
⑤密钥敏感性测试。
为充分表明本发明方法的通用性,图6中图(a)至图(e)为参与测试的图像共计5幅,全部从国际标准测试图像库中选取,图像为24位真彩色图像,其大小为512×512像素;
(1)置乱算法性能分析
为测试本发明所提出的与明文相关置乱算法的极限性能,采取如下的步骤:首先选取一幅测试图像,并构建一幅与其只有一个比特差异的图像。差异像素的位置、对应的色彩通道以及+1/-1操作,均随机选定。然后分别对两幅图像进行置乱操作,并计算得到的置乱图像的差异度。对图6中五幅测试图像的测试结果如下表1所示。由该表可以看出:两幅明文图像间即使只有1个比特的差异,他们对应的City哈希值乃至由其得到的置乱密钥是完全不同的,因此会产生完全不同的置乱结果。
表1 与明文相关置乱算法性能测试结果
(2)扩散算法性能分析
良好的扩散性能是抵御差分攻击的有效保障。差分攻击是选择明文攻击中最为常用的一种手段。其基本思路为:攻击者采用相同的密钥,加密两幅具有极其微小差异(例如一个比特)的明文图像。通过对比得到的两幅密文图像,分析出所使用的密钥流乃至密钥情况。因此,若一个像素值的微小改变可有效的扩散至整幅密文图像,则差分攻击是无效的。
NPCR(number of pixels change rate)与UACI(unified average changeintensity)是衡量一个图像加密***扩散性能的两个核心指标。NPCR用于测试两幅图像间的差异度。设P1(i,j)和P2(i,j)分别表示P1与P2两幅图像位于(i,j)点的像素值,NPCR的定义为:
D(i,j)的定义为:
对于两幅纯随机图像,其NPCR理论值为:
其中L为图像的色彩深度。例如,对于2幅8位纯随机图像,其NPCR理论值为99.609%。
UACI用于测试两幅图像间的平均差异强度,其定义为:
对于两幅纯随机图像,其UACI理论值为:
例如,对于2幅8位纯随机图像,其UACI理论值为33.464%。
对于一个设计良好的图像加密***,其NPCR与UACI指标应尽可能接近理论值。
为了测试极限情况下算法的扩散性能,同样选取表1中所列出的图像对参与测试。对每对图像采用相同的密钥进行加密,得到的测试结果如表2所示。在表2中同时给出了本发明算法与传统算法的对比。
表2 NPCR与UACI测试结果
从表2可以看到,本发明所提出加密算法仅需一轮扩散操作即可获得理想的NPCR与UACI指标,而对于传统加密算法,需要2轮扩散操作才能达到理想的NPCR指标、需要3轮扩散操作才能达到理想的UACI指标。因此,本发明所提算法具有更高的计算效率。
(3)抗穷举攻击(密钥空间)分析
密钥空间是指在加密或解密过程中可用的不同密钥的总量。对于一个安全的加密***,密钥空间应该足够大以使穷举攻击(暴力破解)失效。根据现有计算机的运算速度及未来几年内的发展趋势,目前密码学界认为密钥长度大于100位即可有效抵御穷举攻击。本发明所提出的加密***的密钥由两部分组成:置乱密钥和扩散密钥。置乱密钥由原图像的32位City哈希值决定,扩散密钥由Lü***的三个状态变量初始值组成,本加密***在实现时,所有状态变量均定义为双精度浮点数(64位double型)。根据IEEE浮点数标准,该数据类型的有效精度为53位,因此本发明所提出的加密***的密钥长度为32+53×3=191位。
(4)抗统计攻击分析
(a)直方图分析
直方图直观的描述了一幅图像的像素值频率分布。对于一个设计良好的图像加密***,其输出的密文图像像素值频率应服从均匀分布,以隐藏明文信息中的冗余并阻止攻击者观测到任何有关明文与密文间关联的信息。图7中图(a)至图(n)所示,密文图像的直方图呈良好的均匀分布,与明文图像的直方图间不具备任何关联性,因此可有效抵御频率分析。
(b)相邻像素相关性
对于一个具有明确视觉含义的数字图像,其每一个像素点在水平、垂直以及对角线方向与其相邻像素点间均具有很高的相关性。而对于一个设计良好的图像加密***,其输出的密文图像的相邻像素间应不具备任何相关性。图8中图(a)至图(f)给出了第一幅图明文图像与其密文图像的三个色彩分量的水平方向相邻像素相关性可视化测试结果。该测试将一对相邻像素的像素值作为横、纵坐标,以点的形式绘制于二维平面上。从测试结果可以看出,对于明文图像,绝大部分的点都集中在对角线附近,说明相邻像素间具有极强的相关性。而对于密文图像,所有点均匀分布于灰度平面上,说明其相邻像素间已不具有任何相关性。
为了进一步定量衡量与比较明文图像与密文图像的相邻像素相关性,下面计算图像的相关系数,方法如下:
首先在图像(的每个色彩分量)的某个相邻方向上(水平、垂直、对角线)随机选取5000对相邻点。然后,利用公式(13)-(15)计算图像在该方向上的相关系数rαβ。
其中,αi和βi分别为图像中两个相邻点的像素值,N为采样点的个数。
表3中列出了第一幅图明文图像与其密文图像的三个色彩分量上的相邻像素的相关系数。从表中可以看到,本发明所提出的加密算法产生的密文图像,其在各方向上的相关系数均接近于0。
表3 第一幅图明文与密文图像的相关系数
(c)信息熵分析
信息熵是表征一个信源随机性与不可预测性的重要指标。信息熵通常由平均信息量来描述,即表达一个信源中的一个码元所需的平均比特数,其定义为:
其中φ代表由N个不同码元构成的信源,为码元出现的概率。由式(16)可知,对于一个256级灰度的纯随机图像,其信息熵的理论值为H(φ)=8。因此对于一个设计良好的图像加密***,其输出的密文图像的信息熵应尽可能接近于8。
表4给出了利用公式(16)得出的明文图像与对应的密文图像的信息熵。从表中可以看到,全部密文图像的信息熵都极其接近理想值8,这意味着可以将本加密***输出的密文图像看作一个随机信息源。
表4 明文与密文图像的信息熵
通过以上三个方面的测试可知,本发明构建的图像加密***具有良好的抗统计攻击能力。
(5)密钥敏感性测试
密钥敏感性是加密***设计的一项基本准则。该属性要求当应用任意两个具有极小差异的密钥加密相同的明文时,将产生完全不同的密文。反之,当攻击者尝试使用与加密密钥极为相近的解密密钥实施解密时,不能得到任何与明文相关的信息。
在本项测试中,首先随机选定一组加密密钥(x′0=0.504680160433054,x0=9.13375856139019,y0=-6.32359246225410,z0=2.78498218867048)对第一幅图明文图像实施加密,得到的密文图像如图9中图(a)所示。然后对得到的密文图像分别使用5个解密密钥进行解密。在5个解密密钥中,只有第1个与加密密钥完全相同,而其余4个只在一个状态变量上与加密密钥存在一个比特的差异,如表5所示。得到的解密结果如图9中图(b)-图(f)所示。对其它测试图像可得到相似的结果,这里不再给出。
表5 应用于密钥敏感性测试的密钥列表
由以上测试结果可知,本发明提出的图像加密***具有良好的密钥敏感性。
Claims (2)
1.一种具有明文相关置乱机制的快速混沌图像加密方法,其特征在于,包括以下步骤:
步骤1、设置logistic映射的控制参数、Lü***的控制参数和扩散密钥;
步骤2、按由上至下、由左至右的顺序,将待加密图像每个像素的三个颜色分量的值依次存入一个一维数组中;
步骤3、根据所获得的待加密图像一维数组,对明文图像进行置乱处理,具体如下:
步骤3-1、根据所获得的待加密图像一维数组获得City哈希值;
步骤3-2、根据获得的City哈希值,设置logistic映射的状态变量初值;
步骤3-3、根据设置的logistic映射的状态变量初值和控制参数,预迭代logistic映射使其充分进入混沌状态;
步骤3-4、正式迭代logistic映射,将每次迭代得到的状态变量值依次放入一维数组中,获得logistic映射状态变量数组,该状态变量数组的长度为:待加密图像一维数组的长度-1;
步骤3-5、对logistic映射状态变量数组进行量化,得到伪随机置乱序列,该序列中的每个元素表示待交换元素所在位置;
步骤3-6、根据伪随机置乱序列中每个元素的对应位置,将待加密图像一维数组中的每一个元素与对应位置的元素相交换,待加密图像一维数组中最后一个元素不做置乱处理;
步骤4、将置乱处理后的待加密图像一维数组进行扩散处理,具体如下:
步骤4-1、生成扩散密钥流序列,该序列的长度为:待加密图像一维数组的长度;
步骤4-2、根据扩散密钥流序列,对置乱处理后的待加密图像一维数组中的每一个元素实施加密;
步骤5、反复执行步骤3至步骤4,进行多轮加密,获得密文图像;
步骤3-2所述的根据获得的City哈希值,设置logistic映射的状态变量初值,具体公式如下:
x′0=hashp/232 (1)
其中,x′0表示logistic映射的状态变量初值,hashp表示待加密图像一维数组P的City哈希值;
步骤3-3所述的根据设置的logistic映射的状态变量初值和控制参数,迭代logistic映射使其充分进入混沌状态,具体公式如下:
x′n+1=μx′n(1-x′n),x′n∈[0,1],μ∈[0,4] (2)
其中,μ表示logistic映射的控制参数,x′n表示logistic映射第n次迭代的状态变量值,其初始值为x′0;
步骤3-5所述的对logistic映射状态变量数组进行量化,得到伪随机置乱序列,该序列中的每个元素表示待交换元素所在位置,具体公式如下:
其中,rn表示待加密图像一维数组P中元素pn待交换位置,pos(qn)函数表示元素qn在logistic映射状态变量数组Q={q0,q1,…,q3×W×H-2}中的位置,即n;abs(qn)函数表示元素qn的绝对值;sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数,len(P)表示待加密图像一维数组P的长度;
步骤4-1所述的生成扩散密钥流序列,具体如下:
步骤4-1-1、预迭代Lü***,使其充分进入混沌状态;
步骤4-1-2、正式对Lü***进行迭代,将每次迭代获得的3个状态变量存入一维数组S={s0,s1,...,s3×W×H-1},获得Lü***状态变量数组,该数组的长度与待加密图像一维数组相同;
步骤4-1-3、对Lü***状态变量数组进行量化,获得扩散密钥流序列;
所述的扩散密钥流序列为K={k0,k1,...,k3×W×H-1},具体公式如下:
ke=mod[sig((abs(se),m),28] (4)
其中,ke表示扩散密钥流序列中第e个元素,se表示Lü***状态变量数组中第e个元素,e=0,1,…,3×W×H-1,W表示待加密图像的宽度,H表示待加密图像的高度,sig(num,m)函数表示num的前m位有效数字;mod(num1,num2)函数表示num1除以num2的余数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611128972.4A CN106778304B (zh) | 2016-12-09 | 2016-12-09 | 一种具有明文相关置乱机制的快速混沌图像加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611128972.4A CN106778304B (zh) | 2016-12-09 | 2016-12-09 | 一种具有明文相关置乱机制的快速混沌图像加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106778304A CN106778304A (zh) | 2017-05-31 |
CN106778304B true CN106778304B (zh) | 2020-06-09 |
Family
ID=58875757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611128972.4A Active CN106778304B (zh) | 2016-12-09 | 2016-12-09 | 一种具有明文相关置乱机制的快速混沌图像加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106778304B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107633175B (zh) * | 2017-09-14 | 2020-11-03 | 交通运输部水运科学研究所 | 一种基于混沌的快速彩色图像加密方法 |
CN107886003B (zh) * | 2017-10-12 | 2019-08-09 | 东北大学 | 一种基于非线性***的密码学置乱方法 |
CN107819573A (zh) * | 2017-10-17 | 2018-03-20 | 东北大学 | 高维安全算术编码方法 |
CN107911208B (zh) * | 2017-12-28 | 2019-01-11 | 中国人民解放军陆军工程大学 | 一种混沌序列产生方法及产生器 |
CN109660695B (zh) * | 2018-12-06 | 2020-03-10 | 广西师范大学 | 一种基于遗传模拟退火算法和混沌映射的彩色图像加密方法 |
CN110225222B (zh) * | 2019-06-06 | 2021-02-19 | 河南大学 | 一种基于3d正交拉丁方和混沌***的图像加密方法 |
CN112788195B (zh) * | 2019-11-11 | 2023-08-29 | 阿里巴巴集团控股有限公司 | 图像处理方法、装置和设备 |
CN113742739A (zh) * | 2020-05-28 | 2021-12-03 | 中国电信股份有限公司 | 图像加密方法、装置和存储介质 |
CN112272262B (zh) * | 2020-10-23 | 2021-09-03 | 北京邮电大学 | 一种图像加密、解密方法及装置 |
CN112436933B (zh) * | 2020-11-09 | 2022-06-10 | 杭州电子科技大学 | 基于光混沌的dna图像加密*** |
CN112953890B (zh) * | 2021-01-12 | 2023-11-21 | 国电南瑞南京控制***有限公司 | 一种客户侧用能控制***的信息加密方法及装置 |
CN113115053B (zh) * | 2021-04-08 | 2023-02-07 | 广东海洋大学 | 一种基于整数小波变换和压缩感知的图像加密方法 |
CN114157408B (zh) * | 2021-11-16 | 2024-07-02 | 华中科技大学 | 基于混沌***的数字图像加密方法、解密方法及*** |
CN116566584B (zh) * | 2023-07-10 | 2023-09-19 | 傲拓科技股份有限公司 | 基于Henon混沌***加密的可编程控制器通信方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858799A (zh) * | 2005-05-08 | 2006-11-08 | 中国科学院计算技术研究所 | 一种数字图像哈希签名方法 |
CN102263636A (zh) * | 2011-05-24 | 2011-11-30 | 浙江工业大学 | 一种融合神经网络与混沌映射的流密码密钥控制方法 |
CN102945543A (zh) * | 2012-11-19 | 2013-02-27 | 海南大学 | 一种基于DWT-DCT和Logistic Map的医学图像鲁棒水印方法 |
CN103916234A (zh) * | 2014-04-11 | 2014-07-09 | 中国人民解放军***总医院 | 一种应用于隐私保护的混沌医学图像加密方法 |
CN104144343A (zh) * | 2014-07-11 | 2014-11-12 | 东北大学 | 一种数字图像压缩加密联合编码方法 |
CN104851071A (zh) * | 2015-05-21 | 2015-08-19 | 东北大学 | 一种基于三维混沌***的数字图像加密方法 |
-
2016
- 2016-12-09 CN CN201611128972.4A patent/CN106778304B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858799A (zh) * | 2005-05-08 | 2006-11-08 | 中国科学院计算技术研究所 | 一种数字图像哈希签名方法 |
CN102263636A (zh) * | 2011-05-24 | 2011-11-30 | 浙江工业大学 | 一种融合神经网络与混沌映射的流密码密钥控制方法 |
CN102945543A (zh) * | 2012-11-19 | 2013-02-27 | 海南大学 | 一种基于DWT-DCT和Logistic Map的医学图像鲁棒水印方法 |
CN103916234A (zh) * | 2014-04-11 | 2014-07-09 | 中国人民解放军***总医院 | 一种应用于隐私保护的混沌医学图像加密方法 |
CN104144343A (zh) * | 2014-07-11 | 2014-11-12 | 东北大学 | 一种数字图像压缩加密联合编码方法 |
CN104851071A (zh) * | 2015-05-21 | 2015-08-19 | 东北大学 | 一种基于三维混沌***的数字图像加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106778304A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106778304B (zh) | 一种具有明文相关置乱机制的快速混沌图像加密方法 | |
Wang et al. | An image encryption algorithm based on dynamic row scrambling and Zigzag transformation | |
Wang et al. | An image encryption algorithm based on Josephus traversing and mixed chaotic map | |
Mansouri et al. | A novel one-dimensional sine powered chaotic map and its application in a new image encryption scheme | |
CN112084517B (zh) | 一种基于混沌映射和比特级置换的图像加密方法 | |
Wang et al. | An image encryption algorithm based on new chaos and diffusion values of a truth table | |
CN111105339B (zh) | 一种基于多维混沌***和约瑟夫置乱的图像加密方法 | |
Fouda et al. | A fast chaotic block cipher for image encryption | |
Khanzadi et al. | Image encryption using random bit sequence based on chaotic maps | |
Wang et al. | A novel chaotic system and its application in a color image cryptosystem | |
CN107633175B (zh) | 一种基于混沌的快速彩色图像加密方法 | |
CN103258312B (zh) | 具有快速密钥流生成机制的数字图像加密方法 | |
CN112199690B (zh) | 基于混合时滞的分数阶复杂***同步实现的图像加密方法 | |
CN111050020A (zh) | 基于压缩感知和双随机加密机制的彩色图像压缩加密方法 | |
CN104851071B (zh) | 一种基于三维混沌***的数字图像加密方法 | |
CN109756322B (zh) | 基于des结构与dna编码的数字图像加密方法 | |
Hraoui et al. | A new cryptosystem of color image using a dynamic-chaos hill cipher algorithm | |
CN110086600B (zh) | 一种基于超混沌***和变步长约瑟夫问题的图像加密方法 | |
Zhang et al. | RGB color image encryption method based on Lorenz chaotic system and DNA computation | |
CN114157408B (zh) | 基于混沌***的数字图像加密方法、解密方法及*** | |
CN112636895A (zh) | 一种图像加密解密方法和图像加密解密*** | |
CN113470126A (zh) | 一种新的基于超混沌的置乱与明文像素动态相关的图像加密方法 | |
Wang et al. | A power analysis on SMS4 using the chosen plaintext method | |
Feng et al. | Exploiting robust quadratic polynomial hyperchaotic map and pixel fusion strategy for efficient image encryption | |
Wang et al. | Color image encryption scheme combining cross-plane Zigzag scrambling and pseudo-random combination RGB component diffusion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |