为了提高混沌系统的复杂性和伪随机性,通过分析和改进常用的经典混沌系统,我们设计了一种变参混沌系统,理论分析与仿真测试结果表明其具有更好的混沌特性。并对传统的基于混沌的数字图像加密算法进行改进,提出了一种基于变参混沌系统的图像双重置换加密算法,将这种变参混沌系统应用于数字图像像素位置与像素值双重置换的加密算法中。

一、一种新型变参混沌系统

1、变参混沌系统定义

本文提出的变参混沌系统即对固定分形参数的混沌系统进行改进和综合设计,其根本思想是将混沌系统中的分形参数设为变量,在加密过程中其分形参数随时间变化而在一定范围内变化,这样将极大扩宽密钥空间,提升安全性。变参混沌映射定义:

其中a为参数,控制混沌序列的变化幅值,Xn[O,a],而分形参数bn不固定,设为时变参数,且服从如下的混沌映射:

u为参数。

二、变参混沌系统性能分析

本文在变参混沌系统性能分析仿真实验中均取参数a=4,u=4,为测试其对初值的极端敏感性,取两个相差极为细微的初值b1=0.8851111与b2=0.885 1112,由式(1)和式(2)分别迭代2000次,生成两组混沌序列X1和X2,其差值随迭代次数变换的部分波形图如图1所示。

很显然两个非常接近的初值在迭代12次时开始分叉,且函数值差异很大,两组混沌序列X和X2的运动轨迹毫无联系。同样取Chebyshev混沌系统的两个相差细微的初值c1=0.8851111与C2=0.8851112,取其分形参数co=4,分别迭代2000次,构成两组Chebyshev混沌序列C1和C2,其差值随迭代次数变换的部分波形如图2所示。

两个相差甚微的初值经过迭代18次时开始分叉,两组混沌序列C1和C2运动轨迹变得毫不相干,本文提出的变参混沌序列只需迭代12次则开始出现分叉,而Chebyshev混沌序列在同样的初值情况下却需要迭代18次才开始分叉,将其参数改变进行多次实验,均能得出类似的结论。这表明:本文提出的变参混沌系统对初值具有极端的敏感性,而且还要优于Chebyshev混沌系统。混沌序列五的波形图图3表明:变参混沌系统具有类似白噪声的性质,而且分散程度比较高。

为对迭代产生的混沌序列进行性能分析,通过一个阈值函数B将离散的实数值混沌序列转换成二值序列,B函数定义:

其中{xi}为实数值混沌序列,u为{xi}序列均值,则{Bi}序列为二值随机序列。为对随机O、1二值序列{Bi}进行随机性测试,应采用一些公认的科学合理的测试标准进行测试,本文采用美国标准技术研究所(NIST)制定的FIPS PUB 140-2标准进行测试。每个二值序列的长度为20 000位,经过单位测试实验,其测试的结果如表1所示(统计1的个数),由实验结果表明其二值序列通过单位测试,具有良好的随机性。任取6个不同的初值,由变参混沌系统生成6个不同的二值序列,进行扑克测试结果如表2所示,显然均通过扑克测试。分析游程特性时,与几个经典混沌系统生成的序列进行比较测试,仿真实验的测试结果如表3所示。经过对表中数据详细分析比较,游程长度最好的是Chebyshev混沌序列,其次是本文提出的变参混沌序列,其游程特性要优于Logistic混沌序列和Tent混沌序列。满程测试中,游程长度大于25的长游程为O,变参混沌系统产生的二值序列显然通过长游程测试。移位特性的测试结果如表4所示,实验数据显示变参混沌序列的移位特性略逊于Logistic混沌序列,而要优于Chebyshev混沌序列和Tent混沌序列。

谱分析是寻找混沌特性的—个重要方法,列初值b1=0.921111生成的变参混沌序列进行功率谱分析,其功率谱如图4所示。从功率谱密度图来看,其功率谱是类似宽带噪声的连续谱,这证实系统具有明显混沌特征。

经过对本文所提出的变参混沌系统进行性能测试,实验结果表明其是典型的混沌系统,且其一些性能指标要优于传统的混沌系统。

三、加密与解密算法具体实现

基于变参混沌系统的数字图像双重置换的加密算法有两个过程,首先对像素位置进行置换,再进行像素值的置换,从而得到密图,设原数字图像大小为m,n。

第一步对数字图像像素位置进行置换的算法如下:

(1)将数字图像矩阵Am,n按行扫描转换成一维序列I{I1, I2,Im,n}。

(2)利用变参混沌系统产生—个混沌序列V{V1,V2,Vm,n},且与I{I1, I2,Im,n}中的元素一一对应。

(3)将混沌序列V{V1,V2,Vm,n}由小到大排序,形成有序序列V'{V'1,V'2,V'm,n},由于V'{V'1,V'2,V'm,n}与I{I1, I2,Im,n}中的元素一一对应,I{I1, I2,Im,n}也由同样的置换规则置换成I'{I1', I2',I'm,n}。

(4)将I'{I1', I2',I'm,n}按顺序每m个元素构成一行,从而重构二维矩阵Bm,n,即为经过像素位置加密后的图像矩阵。

第二步对数字图像像素值进行置换的算法如下:

(1)构造—个长度为m’,z的一维序列G{Go,G1,... ,Gm,n-1),令Go=O,G1=1,…,Gm-n-1=m’n-1。

(2)用变参混沌系统产生另—个混沌系统V{VO,V2,,Vm‘n-1),并且与序列G{Go,G1,... ,Gm,n-1)中的元素一一对应,即V与Gk对应。

(3)将混沌序列V{VO,V2,,Vm‘n-1)由小到大排序,形成有序序列V’{V‘O,V’2,,V‘m‘n-1),由于V’{V‘O,V’2,,V‘m‘n-1)与G{Go,G1,... ,Gm,n-1)中的元素一一对应,G{Go,G1,... ,Gm,n-1)也由同样的置换规则置换成G{Go,G1,... ,Gm,n-1)。

(4)将Bm,n(表示经过像素位置置换所得加密图像矩阵)中的像素值进行置换加密,具体置换规则:对Bm,H任意像素点的像素值bij,取G'{G'o,G'1,... ,G'm,n-1)序列中对应元素G’膏,其中k= (i-1)’m+j,令Pk=G'kmod 256,再将Pk与bi进行异或运算得Hk,即为bij置换后的像素值。

(5)重复(4),对Bm,n的所有元素bij进行像素值置换,得到矩阵Hm,n即为经过像素位置与像素值双重混沌置换后的加密图像矩阵。本算法极易扩展到彩色图像的加密,只需在(4)和(5)过程中分别对bij的R、G、B分量进行像素值的置换即可。

解密过程与加密过程正好互逆,根据加密算法设计,易得具体的解密算法。

四、加密效果评价

1、加密效果图

原数字图像图5 (a)只经过像素位置置换得加密图5(b),图5(C)为只经过像素值置换的加密图,而图5 (d)则为经过像素位置与像素值双重置换的加密图。

由图5可以得出:经过像素位置与像素值双重置换加密所得密图像素分布均匀,已覆盖了原图像的人物轮廓,无法得出原图像的细节信息,其加密效果良好,安全性更高。

2、直方图分析

原图像图5 (a)的直方图如图6(a)所示,只经过像素位置置换的加密图5(b)的直方图如图6(b)所示,而只经过像素值置换的加密图5 (c)的直方图则如图6(c)所示,图6(d)为双重置换的加密图5(d)的直方图。

实验数据表明:变参混沌系统的双重置换加密图的直方图与原图像的直方图有很大变化,而且密图的直方图分布比较均匀,从而很大程度上增强抵御统计攻击的能力。

3、抗裁减分析

图7(a)显示加密图受到裁剪攻击,受攻击面积约为整个图像的1/2,其解密所得的图像如图7(b)所示。当加密图受到如图7(c)所示的面积约为整个图像的1/5的裁剪攻击时,其解密图像如图7(d)所示。这表明:加密图受到不同程度的裁剪攻击,本算法解密图像微有噪声,但并不明显影响图像的整体效果,因此本算法具有很强的抗裁剪性。

4、抗噪声实验

在加密图中加入各种参数的高斯白噪声(m表示均值,σ表示方差),其抗噪声效果如图8所示。由此可见,受到噪声污染的密图像基本能够恢复出原图,表明本算法抗噪声能力很强。

5、密钥分析

图9(a)是原图像,图9(b)是用正确密钥解密的效果图(其密钥与图5中的密钥一致),图9(c)与图9(d)是使用错误密钥进行解密的效果图。错误解密密钥与正确的加密密钥相差甚微,解密后的图像不具有原图像的任何信息。以上实验数据充分表明本算法对密钥具有极强的敏感性,因此安全性是很高的。本加密算法的密钥为K=(Xc,u),若所选变参混沌系统初值XO的精度为小数点后10,由于算法中一共用到4个混沌序列,更极大地扩展了密钥空间,密钥空间有1010’ 1010‘1010 ’1010= 1040,XO可以取(0 1)之间的任何值,如精度提高,则其密钥空间将会进一步扩展。因此,本算法具有极强的抗强力攻击能力,使得对密钥的穷举攻击变得不可行。

小知识之置乱

所谓“置乱”,就是将图像的信息次序打乱,将a像素移动到b像素的位置上,b像素移动到c像素的位置上……使其变换成杂乱无章难以辨认的图像。