APP下载

基于混沌序列与DNA突变原理的彩色图像加密方案

2021-06-09晋,王伟,李宇,曹鸿

大连工业大学学报 2021年3期
关键词:加密算法加密编码

郝 晋,王 伟,李 庆 宇,曹 颖 鸿

(1.大连工业大学 信息科学与工程学院,辽宁 大连 116034;2.大连工业大学 机械工程与自动化学院,辽宁 大连 116034;3.陆装沈阳军代局驻大连地区军代室,辽宁 大连 116033)

0 引 言

随着网络和通信技术的飞速发展,数据的传输方式产生了巨大的改变,对数据传输安全的要求越来越高。然而,由于数字图像本身具有的信息量大、相邻像素点间相关性高的特点,使得常用的加密方法并不能完全满足数字图像的加密要求。因此,针对数字图像加密算法的研究成为研究热点。由于混沌系统是特定系统中的随机或不确定运动,具有许多独特的特性,如遍历性、内在的随机性和对初值的敏感性[1-2],使得混沌系统在图像加密算法的设计中具有广泛的应用前景[3-6]。

与整数阶混沌系统相比,分数阶系统能更准确地反映自然现象,这使得分数阶混沌系统得到了广泛的研究。与传统的分数阶系统求解算法相比,Adomian分解法具有收敛速度快、资源消耗少、计算速度快等优点,被广泛应用于分数阶混沌系统的求解。目前,有很多基于ADM算法的分数阶系统的研究与应用。Yang等[2]研究了分数阶4D忆阻超混沌电路的动力学特性,并将其应用于图像加密。Zhang等[7]分析了分数阶混沌系统的同步和自适应问题。Ayub等[8]研究了分数阶反馈控制的动力学问题。Manoj等[9]分析了分数阶的动态特性,并将其应用于图像加密。本研究提出了一种三维分数阶简化统一系统,并对其分数阶系统动力学特性进行了分析。

目前,基于混沌系统已经提出了多种图像加密算法。文献[10-11]提出了基于离散混沌系统图像加密算法,文献[12-14]采用超混沌系统图像加密算法。为了提高图像加密算法的安全性能,在图像加密过程中加入了DNA序列编码。文献[15-16]提出了一种新的基于混沌系统和DNA操作的图像加密算法。文献[4,17]提出了一种基于DAN计算和混沌系统的新型图像加密算法。本研究将DNA突变理论引入到加密算法中,以期进一步提高图像加密算法的安全性,降低密文图像与明文图像相关性。

1 系统原理及动力学分析

1.1 DNA突变原理

DNA序列由腺嘌呤(A)、胸腺嘧啶(T)、胞嘧啶(C)、鸟嘌呤(G)4种核酸碱基组成,其中A和T是互补的,C和G是互补的。在当前DNA编码理论中,所有的信息都由这4种核苷酸表示。根据计算机二进制0和1的互补规则,00和11是互补的,01和10是互补的。因此,在编码过程中将DNA碱基A、T、C、G分别编码为00、01、10、11。显然,编码规则有4!=24种,但只有8种编码方式满足Watson-Crick互补规则,如表1所示。在传统二进制加减法的基础上,可得DNA的加减法。因此,根据8种DNA编码规则,存在相应的8种DNA加减法规则。例如,在DNA编码规则1的基础上,DNA加法规则1和减法规则1如表2所示。

表1 DNA编码法则Tab.1 The law of DNA encoding

表2 DNA加减法则表Tab.2 Addition and subtraction rules of DNA

在DNA序列形成过程中,按照A与T、C与G配对。同时当L(xi)为xi的互补对时,每个碱基xi与它的配对碱基对都满足式(1)。

(1)

由式(1)可知,互补碱基对有6种合理组合,如式(2)所示。加密过程中,随机选择6种互补组合规则中的一种互补置换,达到像素扩散的目的。

(2)

在DNA互补配对过程中,会出现DNA突变现象,也称碱基置换突变,是指DNA分子中一个碱基被另一个不同的碱基取代所引起的突变,即点突变。因为基因突变的发生限定在特点时间、特定突变的个体、特定突变的基因,都是随机突变的结果。这种突变的应用可满足图像信息加密随机性高、变化率大的需求。

1.2 混沌动力学分析

所提出的基于Lu系统和Chen系统的分数阶三维简化统一系统数学模型如式(3)所示[18]。其中x1,x2,x3为混沌系统的状态变量,q(0

(3)

令c=0.9,q=0.9,时间步长为t=0.001 s,系统初值[x0,y0,z0]=[0.1,0.2,0.3]。此时,得到系统的混沌吸引子相图如图1所示。同时计算可得李雅普诺夫指数(L1,L2,L3)=(5.082 4,0,-33.903),由于系统只有一个正的李雅普诺夫指数值,并且所有的李雅普诺夫指数之和为负,所以系统在当前条件下处于混沌状态。当系统参数q=0.9,c∈[0.7:1.15]时,得到李雅普诺夫指数谱与分岔图如图2所示。由图2可看出,系统在c∈[0.7,1.15]的大部分范围内是混沌的,仅仅c=0.84附近出现了一个周期窗口。

(a) x-y平面

(a) 李雅普诺夫指数

综上所述,分数阶简化统一系统具有较大的混沌域,分布在一个较大的区域内,这意味着该系统具有良好的随机性。

2 图像加密和解密方案

2.1 加密方法

所提出的图像加密算法由像素点随机置乱和DNA扩散两部分组成。像素点随机置乱部分利用三维分数阶混沌映射生成随机混沌序列对图像R通道、G通道和B通道进行无序化处理。DNA扩散部分利用三维分数阶混沌系统生成混沌序列结合DNA编码操作,对置乱后的图像R通道、G通道和B通道进行扩散运算,即互补操作、加法操作、突变操作。主加密过程如图3所示。

图3 加密算法流程图Fig.3 The flow chart of algorithm

具体加密步骤如下:

步骤1输入大小为H×W×3的彩色原始图像(H为图片高度、W为宽度)。设置密钥值c,x0,y0,z0,m,n,c0,α,β,Li,根据式(4)算法得到分数阶三维混沌系统的新初值条件:

(4)

(5)

步骤2设定L=max(H,W),让混沌系统根据新的初始条件迭代(m+L)次,并将之前的m个值丢弃,以提高初始值的灵敏度。同时,置乱算法的置乱规则由式(6)确定。

(6)

式中:Cx,Cy,Cz为矩阵置换系数,k为对应置换点的坐标。

步骤3将彩色图像I分解为R、G、B部分,然后将R、G、B部分转换为3个矩阵,并分别对3个像素矩阵元素的点进行点移位处理。具体操作:矩阵中的每个坐标点都与之唯一相对的置换点置换。重新构造矩阵后,得到置乱图像矩阵TK。置乱后的像素矩阵根据DNA运算规则进行扩散,包括相加运算、互补运算和突变运算。具体见步骤4~9。

步骤4将置乱后矩阵中的数值以二进制数值表示,得到H×W×8的二元矩阵R1、G1和B1。然后依照DNA编码规则,将二进制矩阵转化为H×W×4的DNA序列矩阵S1,S2和S3。

步骤5设定混沌系统的初始值x0,y0,z0,得到混沌序列,通过迭代式(1):n+H×W次,并丢弃前n个值。根据式(7)得到k1,k2和k3三个序列。

k1=mod((xi)×1016,256)k2=mod((yi)×1016,256)k3=mod((zi)×1016,256)

(7)

将得到的序列整形后进行DNA编码,得到一组新的DNA序列矩阵k1,k2和k3,矩阵大小与像素矩阵大小相同。

步骤6用得到的伪随机数序列矩阵k1对加密图像的像素矩阵S1进行扩散操作。具体方式是:利用规定好的碱基配对规则,将像素S1矩阵原有的DNA排序扰乱,生成新的DNA排序,再与伪随机序列矩阵k1进行加法计算,得到新的加密图像像素矩阵N1。

步骤7利用基因突变中的碱基置换突变规则,加大图像信息加密随机性。在DNA扩散操作后,每一像素点的值已经被表示为4个碱基组成的加密组合(如ATCG),将每组内的碱基随机互换。得到新的加密图像像素矩阵C1。

步骤8利用DNA编码规则对C1矩阵进行反编码,并还原成十进制数表示的像素矩阵C。

步骤9输出最终加密图像结果,完成加密过程。

2.2 解密方法

解密算法是一个恢复原始图像的过程。首先将加密图像重新编码成DNA序列矩阵,之后利用突变原理进行反向还原,还原后运用DNA减法原理以及DNA互补原理,从而得到加密图像的原DNA序列。利用编码规则对DNA序列反编码,利用三维系统生成混沌序列并转变为伪随机序列来还原加密图像的置乱步骤,得到最初的已解密像素矩阵,并编码成十进制像素矩阵,组合后得到解密图像。

解密算法:

步骤1输入加密后的大小为H×W×3的图像C,利用DNA编码原则对矩阵编码形成C1,元素矩阵的大小为H×W×4。

步骤2利用基因突变碱基置换突变,进行逆突变变化。生成原始DNA加密后的矩阵。

步骤3根据三维系统生成的混沌序列并转化后的伪随机系列。利用DNA减法计算,还原加密图像的DNA序列,得到加密扩散序列,扩散序列,再依据规定好的碱基配对原则与生成的伪随机序列逆运算,得到未全部解密的DNA元素矩阵S1。

步骤4重新整形S1为大小H×W矩阵,并进行二进制编码,形成元素矩阵TK。由三维混沌系统生成序列,再由式(6)生成点置换规则,对矩阵反置乱。

步骤5对元素矩阵进行点置乱计算。具体过程为三个像素矩阵中的每个点都与之唯一相对的置换点k置换,得到解密图像矩阵TK3。

步骤6恢复三个二进制像素矩阵为十进制,通过组合输出解密图像。完成解密过程。

3 仿真与性能分析

3.1 算法仿真结果

为验证所提加密算法的有效性。使用大小为256×256的Lena图像进行算法测试。设定分数阶混沌系统的参数、初始值和阶数。基于Matlab 平台,得到相应的实验测试结果如图4所示。实验结果表明,该算法能有效地对图像进行加密和解密。

(a) 原始图像

3.2 密钥空间分析

对于一个好的图像加密算法,需要有足够大的密钥空间来抵御蛮力攻击。在加密方案中,如果计算精度为10-5,密钥c,q,x0,y0,z0对应的密钥空间大小约为2249;对于密钥的另一部分m,n,c0,α,β,Li,因为DNA有4种碱基,8种编解码规则和6种互补规则,所以得到密钥空间22×26×220=228。所提算法的密钥空间是2277,所提出的算法空间足够大,可以经受蛮力攻击。

3.3 密钥敏感性分析

密钥敏感性是指当密钥发生微小变化时,恢复后的图像将与原来的图像完全不同,这意味着加密算法是良好的密钥敏感性。实验中,分别对解密算法的密钥(x0+10-15),(y0+10-15),(z0+10-15),(c+10-15)进行了改变,将加密的图像进行解密算法运算,得到相应的结果如图5所示。显然,这些恢复后的图像与正常解密后的图像完全不同。因此,该算法对密钥非常敏感。

(a) 正确解密图像

3.4 统计性能分析

3.4.1 直方图分析

直方图反映图像中像素值的分布。加密图像的直方图应该是平坦的,能够很好地抵抗统计攻击。原始彩色Lena图像及其加密图像的直方图如图6所示。可以看出,加密图像的直方图非常平滑,因此,攻击者不会通过分析密文直方图得到任何有用的图像信息。所以,此算法可以防止统计攻击。

3.4.2 图像相关系数

对于原始图像,相邻像素之间有很强的相关性。一个好的图像加密算法应该打破相邻像素之间的相关性。计算像素相关系数见式(8)。

(a) R通道

(8)

式中:x、y为不同图像的像素值,cov(x,y)为协方差,E(x)和D(x)分别表示x和N的平均值和方差,N是图像中像素的总数。

通过计算,表3、表4列出了加密后的图像在R、G、B分量中相同及相邻的位置的相关系数。原始Lena图像和加密后的图像在R、G、B通道的相关系数如表5所示。表格数据表明,原始图像具有显著的相关性,而加密图像的相关性很小说明加密算法的效果达到了要求。

表3 相同位置相关系数Tab.3 Correlation coefficients of identical position

表4 相邻位置相关系数Tab.4 Correlation coefficients of adjacent position

表5 RGB通道相关系数Tab.5 Correlation coefficients in R,G,B channels

为了清楚地看到原始图像和加密图像的相关性,图7给出了Lena图像R通道各方向上的相关性分布。如图7所示,原始图像在相邻像素之间具有极强的相关性,原始图像的所有像素点都是沿着对角线聚集的。然而,加密图像的像素点分散在整个平面上,这表明加密图像中不同像素点之间的关系在加密图像中大大减少。因此,图像加密算法具有抵抗静态攻击的能力。

信息熵是证明图像随机性的一个重要的测量值,由式(9)确定。

(9)

式中:p(mi)表示符号mi出现的概率,L表示所有的特征点mi的数量。对于L=256图像,信息熵的理论值为8。加密图像在R、G、B通道中的信息熵值,以及R、G、B分量S的组合,新算法的计算结果接近于8。因此,加密后的图像具有良好的随机性。

3.5 差分攻击分析

差分攻击是指密文对纯文本的敏感性。一般采用像素数变化率(NPCR)和统一平均变化率(UACI)来检测差异攻击。

NPCR和UACI的计算公式:

(10)

式中:L为所有图像像素的个数。C和C1分别为同一位置变化前后的像素值,通过式子(11)得到D(i,j)。

(11)

(a) R通道水平方向

在实验测试中,只需要改变原始图像的一个随机像素,用一轮加密进行10次测试,就可以得到NPCR和UACI的平均值。计算结果表明,该算法的NPCR和UACI分别为大于99.79%和33.45%,表示该算法足以抵抗差分攻击。

3.6 系统性能比较

统计各项性能,我们与已有的算法进行对比,如表6所示。从密钥空间、信息熵、抗差分攻击性能。证明该加密方法,有更好的安全性。

表6 系统性能比较Tab.6 System performance comparison

4 结 论

基于ADM算法,研究了三维分数阶简化统一系统的动态特性和图像加密应用。动力学分析表明,该混沌系统具有更复杂的动态特性,其混沌态分布在一个较大的参数范围内,这说明它更适合于混沌密码体制。在此基础上,为了保证数字图像在信息传输和存储过程中的安全传输,基于分数阶混沌系统和基于DNA突变算法的算术运算,本文设计了一种新的图像加密方案。加密算法的安全性能分析表明,分数阶简化统一系统及DNA突变原理在图像加密算法中得到了应用,不仅可以有效地对图像进行加密,而且提高了图像加密算法的安全性。为密码学、保密通信和信息安全等领域提供了相关的理论基础和实际应用基础。

猜你喜欢

加密算法加密编码
HEVC对偶编码单元划分优化算法
住院病案首页ICD编码质量在DRG付费中的应用
加密文档排序中保序加密算法的最优化选取
生活中的编码
基于广义logistic混沌系统的快速图像加密方法
保护数据按需创建多种加密磁盘
加密与解密
教育云平台的敏感信息保护技术研究
一种改进的加密算法在空调群控系统中的研究与实现
论纪录片影像中的组合编码运用