APP下载

基于自适应混沌参数调制的图像加密

2012-10-13孙长伟王艳春

赤峰学院学报·自然科学版 2012年6期
关键词:明文加密算法密文

孙长伟,王艳春

(蚌埠学院 机械与电子工程系,安徽 蚌埠 233030)

基于自适应混沌参数调制的图像加密

孙长伟,王艳春

(蚌埠学院 机械与电子工程系,安徽 蚌埠 233030)

提出了一种基于自适应混沌参数调制的图像加密算法,该算法结合了自适应排列图像加密算法可以扰乱混沌加密的吸引域统计特性和基于混沌参数调制的图像加密算法可以抵抗选择明文的攻击性的优点.理论分析和实验结果表明,新的算法具有较高的安全性和良好的密码特性.

图像加密;算法;混沌;自适应

1 概述

图像是一种重要的信息载体,其传输保密要求高,许多专家都对图像加密技术进行了深入的研究.研究方向基本可以分为两类:数字水印技术和图形图像加密技术.数字水印技术主要是在图像信息中加入水印信息,为数字图像提供版权保护[1,2].图像加密技术主要分为两类:对数字图像进行位置置换和对数字图像进行灰度变换,从而隐藏图像中包含的有用的信息,为数字图像提供基于内容的保护[3].

对数字图像进行位置置换加密主要是通过重新排列数字图像像素的位置,从而改变图像的空间有序性和相邻像素的相关性,使明文变为视觉上无意义的图像.由于排列操作只涉及内存的读写操作,因此运算速度很快.但仅采用传统的排列操作是不安全的,容易受已知明文和选择明文攻击.攻击者通过明文和密文对比可以获得密钥的部分信息[4].为了避免上述缺陷,文献[5]提出一种自适应图像加密算法,使排列变换可以由明文决定.排列时先将图像分成上下(或左右)2个部分,对下半部分进行排序,然后按下半部分的排序序号对上半部分进行排列,再采用同样方法对下半部分进行排列.为保证安全性,需要进行多轮加密.加密轮数由密钥长度决定.为了防止穷举攻击,目前公认安全的密钥长度至少为128bit,即自适应排列的加密轮数至少为 128 轮.若密钥的第 i位(1,2,…,l28)的值为0,则图像分为左右2个部分.先根据右半部分像素的顺序对左半部分进行排列,再排列右半部分.若第i位的值为l,则先排列上半部分,再排列下半部分.

排列操作的另一个优势是运算速度特别快,因为它只涉及内存的读写操作.但是仅采用排列的加密算法不能抵抗已知明文攻击.自90年代以来,有关混沌动力学应用的研究逐渐成为信息科学领域关注热点之一.混沌是非线性动力系统中出现的一种确定性的类随机过程,具有遍历性、混合性、确定性以及对初始条件和控制系数的敏感性等特点,这使得混沌系统很适合用于信息保密[6].因此许多基于混沌理论的加密技术被提出来,衍生出包括混沌加性遮掩和混沌参数调制在内的多种加密方式.但是利用混沌加密也有它的局限性,其中一点就是抗统计分析能力差.

基于以上两种加密方式的优缺点,本文提出了一种基于自适应排列和混沌参数调制相结合的加密算法,首先根据图像矩阵行或列的像素数据选择混沌参数,对图像灰度进行加密扰乱,然后按照自适应排列算法对混沌加密后的图像数据进行扰乱.理论分析和仿真结果表明本方案具有较高的安全性和良好的密码特性.

2 加密算法描述

2.1 混沌参数调制加密

2.1.1 混沌参数μ盒的生成

本文采用的混沌系统是Logistic方程,即虫口模型

从Logistic系统方程中可以看出,μ是Logistic系统非常重要的参数,μ值的选取将会决定Logistic系统能否进入混沌态.根据该方程的可以画出Logistic映射的分岔图,如图1所示:

从图1中看出μ值的选取最好在混沌区之内,即2>μ>1.40115518909205…的范围之内,另外需要避开周期3的窗口,即1.809>μ>1.749.这样才能保证混沌加密的保密性强,随机性好,密钥量大的特点.因此参数μ值选取应该在混沌区之内选取,避开周期3的窗口.

图1 Logistic映射的分岔图

在混沌区选取256个值排列成16×16的矩阵作为参数μ盒:

2.1.2 混沌参数调制加密

读取图像的原始数据转换成生成二进制明文矩阵M:

由输入密钥S控制当前轮的加密方式,若当前Si=0,则对明文矩阵按行进行加密;若当前Si=1,则对明文矩阵按列进行加密.下面简述行加密过程:

设当前对第k行数据进行加密,则将第k行的所有数据进行异或操作:

得到一个8位二进制数据bk,将bk的前4位二进制所对应的十进制数加1作为行,后四位二进制所对应的十进制数加1作为列,从μ盒中选取当前行加密的混沌参数μk,将μk代入Logistic混沌方程中,进行迭代运算生成n-1个实数序列:xk={xk,1,xk,2,…,xk,n-1},将实数序列 xk={xk,1,xk,2,…,xk,n}中的每一个数据用二进制表示,分别与第k行的明文数据进行异或操作生成密文数据:

该行的最后一个数据加密方式稍有不同,最后一个数据的密文由该行的前n-1个数据的密文的异或结果与bk进行异或操作产生,即:

这样可以保证该行数据加密后所有密文数据进行异或所得结果与加密前该行所有明文数据进行异或操作后所得结果bk一致,从而可以保证解密时能够从μ盒中找到与加密时一致的混沌参数μk.重复以上操作,对其它行进行加密,直到加密完所有数据.列加密过程与行加密类似,只是加密操作是对明文数据矩阵的列进行.

2.2 S盒替代

经过混沌参数调制加密后每一行或每一列的数据的异或结果与加密以前一致,为了掩盖这种信息因此对加密后的结果进行S盒替代.S盒产生方式:

若当前轮是对行进行加密,则对加密后的密文数据的最后一列所有数据进行异或操作,由所得结果从μ盒中选取产生S盒的混沌参数μs,带入Logistic混沌方程中进行迭代运算,产生256个混沌状态.然后对256个混沌状态进行排序,得到256个排列序号,将所有序号减1,排列成16×16的矩阵作为S盒.该S盒的输入输出均为8bit,共有256个元素,每个元素为0-255之间的整数.最后用产生的S盒对图像的全体像素进行S盒替代.

2.3 自适应性排列

由当前加密的密钥Si控制自适应性排列的方案,若Si=0则把该轮经混沌参数调制加密后的密文数据矩阵分为上下两部分,对下半部分的数据排序,然后按下半部分的排序序号对上半部分进行排列,再采用同样方法对下半部分进行排列.自适应性排列打乱行加密时每一行的数据,从而隐藏每一行的异或结果.

若Si=1则把该轮经混沌参数调制加密后的密文数据矩阵分为左右两部分,对左半部分的数据排序,然后按左半部分的排序序号对右半部分进行排列,再采用同样方法对左半部分进行排列.从而打乱列加密时每一列的数据,隐藏每一列的异或结果.

2.4 解密过程

从上述可以看出该加密过程可逆.加密过程只采用了异或操作和排列操作,因此解密程序和加密程序基本一致.只是解密时需要把密钥S序列逆序排列,解密自适应排列时,要把排列的顺序改变一下,其他与加密程序一致.

3 实验结果与对比分析

本节主要考查第2节中提出的图像加密算法的各种安全特性,包括直方图、明文和密钥的敏感性以及密文相邻像素的相关性.对本文算法与2个已有图像加密算法进行比较,实验所用明文为256~256的 Lena图像,密钥(X0,S)没为(0.64321,0110).

3.1 直方图

图2列出了Lena图像加密后的直方图和加密前后的灰度直方图对比.可以看出,加密后的灰度直方图较均匀,掩盖了明文图像各像素的分布.

3.2 明文敏感性检测

图2 加密结果与灰度直方图

雪崩效应是衡量加密算法的重要指标之一.所谓雪崩效应是指当明文或密钥改变一位时,密文应有超过一半的比特发生改变.这一特性也称为密文对明文或密钥的敏感性.我们将”Lena”图像最后一个像素的最后一比特由1置为0,并对比加密后密文的变化.表1列出了各轮加密后密文位的改变率.从表1可以看出,经过两轮加密后,密文位的变化稳定在0.996左右,即出现雪崩效应.

表1 明文改变一位后密文位的改变率

3.3 密钥敏感性检测

密钥敏感性检测当密钥改变一位时,密文的变化率.我们将密钥S的最后一个比特由0置为1,并对比加密后密文的变化.表2列出了各轮加密后密文位的改变率.从表2可以看出,同样经过两轮加密后,密文位的变化稳定在0.996左右.

表2 密钥改变一位后密文位的改变率

将密钥X0=0.64321改为X0=0.6432100001,对比加密后密文的变化情况,表三列出各轮加密后密文位的改变率.从表3可以看出,同样经过两轮加密后,密文位的变化稳定在0.996左右.

表3 密钥改变一位后密文位的改变率

另外μ盒也是一个重要的密钥,将μ盒中任意一个μ值最后一位改变,都将会引起加密后密文很大的变化.将第一个μ值由1.934254改为1.934255,计算结果表明经一轮加密密文位的改变率就达到0.996.

3.4 密文的相关性检测

在连续色调图像中,相邻象素的相关性通常很高,好的图像加密算法应去除这种相关性.我们从明文和密文图像的水平、竖直和对角三个方向随机地选取255对像素,并计算了对应的相关系数.表4对比了加密前后三个方向上的相关系数.表4说明加密后,相邻密文像素之间的相关性接近于0.

表4 明文和密文图像中相邻像素的相关系数

4 结束语

本文提出了一种新的混沌参数调制加密算法,并将混沌参数调制加密算法和自适应排列加密算法结合在一起组成了一种新的图像加密算法.该算法利用自适应排列加密算法和混沌参数调制加密算法的优缺点进行互补,由实验结果可以看出该算法大大的提高了图像的安全性.该算法具有以下优点:

(1)由图像自身数据选择混沌参数,实现混沌参数调制的自适应性;

(2)对一幅图像数据加密最大可以选择256个混沌参数,经多轮加密后扰乱了混沌的吸引域特性,因此该算法有较强的抗攻击能力;

(3)解密过程和加密过程基本类似,不用额外设计解密系统.

〔1〕Qiao L,Nahrstedt L.Camparison of MPEG encryption algorithms[J].-Computer and Graphics,1998,22(4):437-448.

〔2〕Chen G,Zhao X,Li J L.A self-adaptive algorithm on image ellcryption[J].Journal of Software,2005,6(11):562-568.

〔3〕吴发恩,邹建成.数字图像二维Arnold变换周期的一组必要条件[J].北方交通大学学报.2001,25(6):26-32.

〔4〕Furht B,Kirovski D.Multimedia Security Handbook[M].Boca Raton Florida,USA:CRC Press,2005.

〔5〕陈剐,赵晓宇,李均利.一种自适应的图像加密算法[J].软件学报,2005,l6(11):1975-1982.

〔6〕周庆,胡月,廖晓峰.一种自适应的图像加密算法的分析及改进[J].电子学报,2009,37(12):2730-2734.

TP309

A

1673-260X(2012)03-0024-03

院级科研项目(2010ZR15)

猜你喜欢

明文加密算法密文
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
奇怪的处罚
一种基于密文分析的密码识别技术*
一种基于密文分析的密码识别技术*
HES:一种更小公钥的同态加密算法
奇怪的处罚
基于小波变换和混沌映射的图像加密算法
四部委明文反对垃圾焚烧低价竞争
对称加密算法RC5的架构设计与电路实现