一种基于像素奇偶性和tanh函数的图像加解密算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种基于像素奇偶性和tanh函数的图像加解密算法
段亚军;闫丽宏;何彦兆;董婷玮
【摘要】本文提出了一种新的基于像素奇偶性和tanh变换的数字图像加密算法.算法利用二维logistic混沌映射生成二维随机序列,按照一定顺序重排后进行双曲正切变换,按照奇偶像素子序列与初始图像做异或运算,达到加密效果.仿真实验表明该算法操作简单,安全性高,是一种有效并值得推广的算法.
【期刊名称】《山西师范大学学报(自然科学版)》
【年(卷),期】2015(029)003
【总页数】4页(P26-29)
【关键词】二维logistic映射;tanh变换;加密;解密
【作者】段亚军;闫丽宏;何彦兆;董婷玮
【作者单位】咸阳师范学院数学与信息科学学院,陕西咸阳712000;咸阳师范学院数学与信息科学学院,陕西咸阳712000;咸阳师范学院数学与信息科学学院,陕西咸阳712000;咸阳师范学院数学与信息科学学院,陕西咸阳712000
【正文语种】中文
【中图分类】TP309.7
混沌是一种典型的非线性现象,具有确定性、初值敏感性、类似机性等特点,在机械系统、生物领域、密码通信中广泛存在.由于有了混沌的加入,密码学又向前推进了一大步,混沌加密算法极大地促进了密码学的发展,在信息安全要求日趋增高
的今天,结合网络协议大放异彩.早在上世纪90年代“混沌”概念被提出时,Matthews就将离散混沌动力系统引入到加密算法的设计中,用于产生随机序列[1],这一想法如今仍然被诸多学者采用.近年来,在混沌图像加密算法领域,许多学者都进行了深入的研究探索,取得了一系列丰硕成果.如漆世钱等提出了利用交叉混沌序列来实现图像的加密[2],文献[3]考虑了结合混淆与扩散实现图像加密的问题,但算法对迭代次数与扩散时间有较高的要求.文献[4]讨论了提高密钥敏感性的方法,通过对外部密钥分组生成一维Logistic 映射初始条件,并迭代生成混沌序列.随着混沌理论研究的深入,人们将超混沌[5]、分数阶混沌[6]等复杂混沌系统结合到图像加密算法中,得到了很多有益的结果.
文献[7]中,作者利用一维logistic混沌映射产生的序列作为随机序列,提出了一种像素替代的图像加密算法,取得了较好的加密效果.但由于一维logistic结构简单,产生的混沌序列随机性较差,参数和初始值受到一维参量的制约,使得算法的密钥空间不足,安全性较低.如果采用分数阶混沌,则势必会增加算法复杂性,相应的提高了算法成本,控制成本与提升易操作性也是算法设计中需要考虑的重要因素.
鉴于以上问题,针对一维混沌系统在图像加密中的不足,本文将对文献[7]的结果加以推广与改进,基于像素替代结合二维logistic混沌系统,结合双曲正切变换,提出了一种新的图像加、解密算法.通过数值仿真,利用统计直方图、信息熵、相关系数等指标验证了该算法的有效性.结果表明,该方法可有效增强加密图像抗统计攻击能力,但可使加密速度保持稳定.
1 二维logistic混沌模型
二维Logistic 混沌映射
(1)
参数λ1,λ2和γ决定了该系统的动力学特性.当参数γ增加时,系统将呈现丰富的非线性动力学特性,
不断地经历倍周期分叉达到混沌状态.当选取参数μ=4.0,λ1=λ2=0.89时,系统状态x随参数γ的分岔图如图1所示.特别地,当γ=0.1时,系统处于混沌状态.
2 加密、解密算法描述
设AMN表示大小为M×N的图像,A(x,y)(x∈[0,M-1],y∈[0,N-1])表示图像A 在点(x,y)处的灰度值,记Q={1,2,…,MN}为图像的顺序点集合,Qi(i=1,2)分别表示图像的奇偶点集合.
图1 二维logistic映射分叉图,其中初值(x0,y0)=(0.10,0.11)Fig.1 The diagram of two-dimensional logistic map bifurcation, the initial value
(x0,y0)=(0.10,0.11)
[0,N-1])表示(x,y)为经过加密后所对应的灰度值.加密算法步骤设计如下:
(1) 读入原始图像AMN,若为彩色图像,则将其灰度化;
(2) 给定二维Logistic系统的参数μ,λ1,λ2,γ,任选两个初值,迭代100次后作为系统的初值(x0,y0)T;
(3) 利用下式计算辅助密钥(k1,k2),
(2)
(4)以迭代100次后的(x0,y0)T作为二维logistic混沌系统的初始值,利用辅助密钥(k1,k2)、二维logistic混沌系统,构造1个长度为M×N的二维实混沌序列:
(3)
(5)对由步骤(4)得到的二维实数混沌序列按式
(4)
进行转换[8],得到1个改进的二维混沌序列:(x2(i),y2(i))T,i=1,2,…,MN;
(6)对于图像中的一点(设该点的序号为n),利用下列算法
(5)
构造密钥序列k(n),n=1,2,…,MN.
(7)依次选取原始图像A中的第n个像素点灰度值A(x,y)与步骤(6)产生的二维logistic密钥值进行按二进制位异或运算,可得加密后的像素值向量
(8)重复(5)~(7)步,进行MN次运算,依次对所有的像素点进行加密,即得到加密图像
解密过程与加密过程相逆,算法类似.
注1:如果图像规模较大,可以利用分块的方法,分块后分别对每块利用上述加解密算法,然后再将其合并为整个加密结果.
注2:二维logistic混沌系统的值域是{(x,y)|-1≤x≤1,-1≤y≤1},tanh函数的值域是区间[-1,1].考虑到值域的统一性,参照“反混沌”与“反同步”的思想,本文创造性地利用tanh映射对随机序列进行变换,产生加密密钥序列,得到了理想的结果,详见下述仿真实验.
3 算法仿真与统计分析
以图2(a)为原始图像进行加解密实验.图2(b)和图2(c)是加密和解密图像.
(a)原始图像
(b)加密图像
(c)解密图像
图2 二维logistic映射加解密结果Fig.2 The results of two dimensional logistic mapping encryption and decryption
3.1 直方图分析
直方图是图像的基本且重要的统计特征,它可以直观地反映数字图像的每一灰度级与该灰度级出现频率的对应关系[2].图3(a)是原始图像的像素灰度直方图,图3(b)则对应密文图像.根据仿真可以看出,对于给定的图像,加密后的直方图分布非常均匀,说明该方案可以有效抵御基于像素值统计的攻击.
(a) 原始
(b) 加密
(c) 解密
图3 原始与加、解密直方图Fig.3 The histograms of original the encryption and decryption
3.2 信息熵
图像中各灰度级的统计平均值可以看作是该图像的熵值,信息熵越大,分布越均匀[5].从表1可以看出,加密图像的信息熵为7.985 6,接近于256 级灰度图像信息熵的最大值8,这反映出加密图像的灰度值分布是相当均匀的.
表1 信息熵Tab.1 Information entropy初始图像加密图像信息熵6.05247.9856
3.3 相邻像素的相关性分析
相关研究表明,一幅图像中相邻像素间存在较大的相关性,良好的加密算法应当有效地打乱这种相关性,可有效防止攻击者利用统计分析的方法对图像进行密码分析[4].研究中通常利用“相关系数”这一概念来衡量相邻像素的相关性.
在本文中,我们从初始和加密图像中各随机选取3 000对相邻像素点,利用
MATLAB软件,分别对明文和密文中的水平、垂直和对角线三个方向进行相关性
检测.计算结果如表2所示,可以看到,与明文的相邻像素相比,密文在三个方向
上的像素分布都比较均匀.
表2 初始图像和加密图像的相关系数Tab.2 The correlation coefficient of initial image and image encryption垂直方向水平方向对角方向初始图像0.97680.92030.8288加密图像0.00750.01070.0153
4 密钥敏感性分析
一般的,好的图像加密算法在加密过程中应对密钥非常敏感[7],这包括两个方面
的问题:(1)加密密钥的细微改变会使同一原始图像的两幅密文图像几乎完全不同;
(2)解密密钥的细微调整,可导致解密过程失败,无法复原图像.
本文中,当二维Logistic系统的初始密钥μ1由0.89改变为0.890 001时,通过计算,发现加密后的两幅图像中有97.64%的像素灰度值不相同,密钥的微小变化导致密文几乎完全不同.解密结果也类似.从中可以看出,本文算法在加解密过程中
都有良好的密钥敏感性.
(a)原始图像
(b) 加密结果
(c) 错误解密
图4 错误解密结果Fig.4 The wrong decryption results
5 总结
本文推广并改进了文献[7]的算法,利用二维logistic混沌系统基于像素替代,给
出了一种新的图像加、解密算法.根据统计分析和敏感性分析的仿真结论二维logistic混沌系统由于含有耦合项,混沌序列有较好的随机性,可对二维灰度图进行有效加密.通过理论分析与仿真实例,可以看到,本文所给出的算法具有良好的
抗干扰性能、操作简单、计算量小.希望本文的结果为实际应用提供一定的参考.
【相关文献】
[1] Matthews R. On the derivation of a chaotic encryption algorithm [J]. Cryptologia,1989,(4):29~42.
[2] 漆世钱,赵强.一种基于交叉混沌序列的图像加密算法[J].计算机技术与发展,
2012,22(11):239~242.
[3] Goumidide,Hachouff. Modified confusion-diffusion based satellite image cipher using chaotic standard,Logistic and Sine maps[C].Proceeding of the 2nd European Workshop on Visual Information Processing,2011.204~209.
[4] 孙劲光,汪洁,姜文涛,等.改进的分块算法在矩形图像加密中的应用[J].计算机应用研究,2013,30(1):282~284.
[5] 刘金梅, 丘水生, 刘伟平. 基于超混沌系统的图像加密算法的安全性分析[J].计算机应用研究,2010, 27(3):1042~1044.
[6] 王雅庆, 周尚波. 基于分数阶陈氏混沌系统的图像加密算法[J].计算机应用,2013,33(4) :1043~1046.
[7] 韩凤英.一种基于改进Logistic混沌映射的图像加密算法[J].中南林业科技大学学报,
2008,28(1):153~157.
[8] 吴志军,马兰,杨义先.双曲正切变换在VLSI设计中的研究应用[J].中国民航学院学报,2003, 12 (1):10~13.。

相关文档
最新文档