APP下载

二值图像混沌加密算法研究*

2022-02-22袁伟伟张翠翠

自动化技术与应用 2022年1期
关键词:二值明文加密算法

袁伟伟,张翠翠

(1.江苏护理职业学院,江苏淮安 223005;2.江苏省淮安市淮阴区开明中学,江苏淮安 223300)

1 引言

伴随互联网技术的飞速发展,互联网已经成为当下人们信息交流中必不可少的方式,数字图像作为一种直观性较强的载体,为人们的日常信息交流以及工作需求带来极大的便利[1-3]。但由于图像中包含大量信息,其在网络传输过程中,易遭受外部攻击,影响图像传输安全性[4]。尤其是对于二值图像而言,其具备存储简单、结构聚拢性强等独特优势,被广泛应用于数据传真、文字识别、数字签名、以及模式识别中[5-6]。因此二值图像的安全保护尤为重要。

传统的数据加密机制,如数据加密标准、公钥加密算法等在数据加密时忽略了数据容量以及数据冗余度特点,导致加密效果较差[7]。基于图像混沌图像加密技术是当下的主流的图像安全保密技术,通过混沌系统的混沌行为对图像实施机密处理,已经取得了显著的效果。但混沌图像加密技术在图像加密过程中由于自身存在显著的混沌周期性,仅可以对方形密文实施加密,导致混沌算法的应用受到一定局限[8-10]。

为此,本文对二值图像混沌加密算法应用进行研究,利用循环位移机制,对像素实施置乱处理,使该算法可同时应用于方形和非方形明文,提升算法通用性;并且本文算法有效结合Logistic 映射和Tent 映射,降低混沌周期性的同时实现二值图像加密[11]。

2 基于循环位移的二值图像混沌加密算法

2.1 基于循环位移的二值图像置乱

采用基于循环位移的图像置乱算法提升二值图像混沌算法应用的通用效果,使其既可以应用于方形明文,又可对非方形明文实施加密处理[12-13]。

假设存在一幅二值图像f,其尺寸为a×b,其中a、b分别表示行数、列数,图像f 的x行y列的像素值用f(x,y)表示。二值图像置乱过程如下:

(1)利用Logistic 映射形成的混沌序列xi、yi,其中i=1,2,…,a×b;以及Logistic 映射中的初始值x0、u0,加密算法密钥x1、u1。

(2)如公式(1)所示,p、q 均为空数组,函数floor 分别表示向下取整处理数据,i=1,2,…,a×b,扫描处理图像后可得到长度大小为a×b的一维数据组,从公式(1)可以得出,数组p、q中数据取值区间为1~256。

(3)令i、j从1 分别递增至a、b,递增间隔为1。对图像实施按行扫描,直至图像所有像素点均扫描完成。将图像首行视为交换平台,采用公式(2)交换f((i-1)×a+j)与f(p(i-1)×a+j)两个像素值。

(4)令j、i从1 分别递增至b、a,递增间隔为1。对图像实施按行扫描,直至图像所有像素点均扫描完成。将图像首行视为交换平台,采用公式(3)交换f((j-1)×b+j)与f(q(j-1)×b+i)两个像素值。获取置乱后的图像f1。

2.2 基于像素扩散机制的图像加密

针对循环位移的置乱操作仅改变了像素在图像中的空间位置,不能改变其像素值。为此结合Logistic映射的迭代输出密钥模型以及Tent 映射,通过设计非周期性的像素扩散函数改变像素灰度值,并实现二值图像混沌加密[14-15]。Tent映射模型如公式(4)所示:

其中,W(Oi)表示Tent映射的迭代值;Oi表示Logistic 映射的迭代输出密钥模型输出值,同时也是Tent 映射模型的促发值;ξ表示混沌状态的控制变量,其值处于[0,2]区间。

通过Oi联合与Tent 映射的迭代值控制Tent 映射输出随机序列W,W={W1,W2,…,WMN}。Tent映射原理如下:

(1)若Oi≥0.5,则利用W(Oi)=ξ(1-Oi)来掌控公式(4)的状态值;

(2)若Oi<0.5,则利用W(Oi)=ξOi来掌控公式(4)的状态值;

依照上述原理可了解到,Tent的映射输出由Logistic映射掌控,因此可通过二者共同实现迭代状态变更,降低混沌周期性[16-19]。与此同时,利用序列单调抑制模型,消除映射输出随机序列W={W1,W2,…,WMN}的单调性,增强其随机性。具体如下:

利用非线性原理将依照公式(5)处理完成的随机序列,建立像素扩散函数实现图像加密,如下:

其中,yi表示扩散后的密文像素值;表示异或操作。

整个加密流程如图1所示。

图1 二值图像混沌加密算法流程

3 实验分析

为验证本文算法性能,利用Matlab 软件对本文算法的加密安全进行测试。

3.1 加密效果分析

为验证本文算法优势,采用基于DNA合成图像和混沌映射的图像加密算法(算法1)、基于混沌Gyrator 变换与矩阵分解的图像加密算法(算法2)作为本文算法对比算法,进行加密效果验证。结果如图1所示。其中图2(a)为二值图像初始明文,图2(b)(c)(d)分别为三种算法的加密结果。

图2 三种算法加密效果

分析图2可以得出,三种算法加密后,图像中的有效信息均可以被很好的隐藏起来,未产生信息泄露情况,说明三种算法均具备较好的加密安全性。

对三种加密方法进行信干比性能指标分析。信噪比分析原理。信噪比定义如下:

通过该信噪比值的计算可以衡量加密算法对原始明文图像的加密程度。三种加密算法信噪比如图3所示。

图3 三种加密算法信噪比结果

分析图3可知,所提算法加密后图像信噪比明显低于算法1、算法2,且整体稳定在50dB 以下。表明所提加密算法对原始明文图像的加密程度较好。

信息熵是体现信息随机性的重要度量指标,可利用信息熵对输出密文的安全性差异实施评估。假设s表示一种信息源,那么s的信息熵G(s)计算方式如下:

式中,P(si)用于描述si出现的概率,2n用于描述信息源S的状态总数。对于图2(a)所示的256 级二值图像而言,其像素值存在得可能值为28种,其最理想得信息熵为8。若机密后得图像信息熵值越接近8,表明该加密图像于接近随机分布,加密安全性越高。

因此,为区分三种算法加密后,输出密文安全性差异,采用信息熵对其实施测试评估,结果如表1所示。

表1 三种算法加密后的信息熵测试结果

从表1中可以了解到,本文算法加密后的信息熵值高于算法1和算法2,达到7.9976,非常接近理想值8。结果表明本文算法加密后的输出密文安全性最高,原因在于本文算法利用循环移位技术提升图像的置乱程度,并设计了融合Logistic映射和Tent映射的像素扩散机制改变像素灰度值,缩短了混沌系统周期性,实现较好的图像加密。而算法1 和算法2 在多次迭代过程中周期性过长给攻击者留下缺口趁虚而入,使加密算法安全性下降。

3.2 抗差分攻击性能分析

越是优秀的加密算法对抗外界攻击的效果就越好。为此来利用UACI(像素变更率)和NPCR(统一平均变化强度)分析三种算法的抗差分攻击性能。

NPCR定义为:

UACI定义为:

其中,NPCR用于测量图像见像素值不相同的像素数量于总像素值的比值;UACI用于测量两个图像差异的平均强度;A、S分别为机密图像的宽度、高度;C1(i,j)、C2(i,j)表示像素C1、C2对应(i,j)的灰度值。

三种算法的UACI和NPCR的变化图像如图4所示。

图4 三种算法抗差分性能测试结果

从图4可以看出,本文算法的密文像素变更率、统一平均变化强度均高于另外两种算法。表明本文算法的抗差分性能更好,可较好地对抗外界攻击。

3.3 密钥敏感性分析

图像加密算法应对密钥具备良好的敏感性,即使密钥的变化十分微小,也可以形成截然不同的密文。因此为验证本文算法的密钥敏感度对几个不同的变换域进行试验。像素关联系数是各不明确因素变动率与密钥敏感性指标变动率之间的描述,关联系数越高,则密钥敏感性越好。基于此,采用不同方法处理变换域,DCT使用单一密钥,IWT和DWT采用多个不同密钥。采用如下方式测试本文算法的密钥敏感性。

(1)利用密钥rA加密处理变换域图像,得到图像A。

(2)细微更改密钥rA,得到密钥rB,对相同明文图像实施加密,得到图像B。

(3)二次更改密钥rA,得到密钥rC,对相同明文图像实施加密,得到图像C。

利用本文算法对图像A、B、C进行加密,获取三个加密图像对应的像素关联系数,结果如表2所示。

表2 本文算法的密钥敏感度实验结果

从表2所示的本文算法的密钥敏感度实验结果可以了解到,本文方法对变换域的加密结果的关联系数较好,表明本文算法对变换域的密钥敏感度要高于空间域的密钥敏感度,因此本文算法对暴力攻击的抵御能力较强。

3.4 加密运行时间分析

表3 较小图像矩阵加密运行时间

对二值图像进行行列交替置乱时,行、列的移动位数由混沌序列随机生成。通过大量测试其他算法与本文算法对阶数较小的二维矩阵实施行、列交替置乱加密处理时的运行时间,选取测试结果中部分运行时间较长的数据绘制成结果,如表3所示。

分析表3数据可知,采用不同算法对不同矩阵的图像进行加密处理,相对于其他两种算法,采用本文算法进行加密处理时运行时间较短,因此本文算法的效率较高。

4 结束语

为弥补混沌加密算法的混沌周期性以及针对方形密文加密的应用局限性,提出一种二值图像混沌加密算法。利用循环位移的置乱技术和基于像素扩散机制的图像加密技术共同完成二值图像的加密处理。

猜你喜欢

二值明文加密算法
DES加密算法的实现
基于整数矩阵乘法的图像加密算法
面向网络边缘应用的新一代神经网络
基于二值图像数字水印算法研究
奇怪的处罚
基于稀疏表示的二值图像超分辨率重建算法
基于曲率局部二值模式的深度图像手势特征提取
奇怪的处罚
基于小波变换和混沌映射的图像加密算法
奇怪的处罚