开放科学(资源服务)标志码(OSID):
在大数据时代,信息具有极大的价值,图像是承载信息的一个重要载体,某些图像隐含的信息至关重要。因此,必须保证数字图像的传输、存储、访问等过程安全可靠。图像加密技术能够保障多媒体数据的隐私和保密性,是目前保护图像安全最有效的方法之一,在许多应用中发挥着重要作用,如军事图像数据库、付费电视、保密视频会议、健康管理系统、在线私人相册等[1]。
常见的图像加密方案主要有2种策略:一类重点关注加密系统中随机序列的生成方式;另一类关注加密算法的结构设计。在第一类图像加密策略中,随机序列的生成方式大部分基于混沌系统,在基于混沌序列的图像加密方案中,研究人员大多关注混沌映射的构造,原因是加密系统的安全性依赖其所使用的混沌系统的复杂性。现有的混沌映射具有周期性短、点分布不均匀、控制参数受限等缺点,因此,有很多学者针对混沌系统进行改进,以获得更好的安全性。文献[2]以混沌系统的初始值和参数作为密钥,采用改进Joseph遍历的方法对图像进行加密。文献[3]利用2个现有混沌映射作为种子映射,将余弦变换作为框架,从而生成一种新的混沌映射,并将其应用于所设计的图像加密算法中。文献[4]提出一种基于比特反转的增强型数字混沌映射,其可以有效增强密钥流的混沌特性。高维混沌映射比一维混沌映射更具安全性,前者经常直接被用于加密系统中:文献[5]直接利用二维Logistic映射进行图像加密;文献[6-7]分别利用二维和三维可逆模块化混沌映射加密灰度图像和彩色图像,它们有效增大了密钥空间;文献[8]将Logistic映射和sine映射相耦合,将一维映射扩展到二维并用于图像加密以获得更快的速度和更好的性能。在关注加密算法结构设计的图像加密策略中,利用DNA运算和比特层次进行加密是常见的做法[9-10]。文献[11]利用DNA序列实现多图像加密中基于索引的置乱和扩散操作。文献[12]提出一种结合缠绕Logistic映射、动态DNA编码与运算的彩色图像加密算法。文献[13]利用比特替换的方法将混沌映射置乱后的图像序列融合为2组混沌序列,从而产生中间密文并有效隐藏明文信息。文献[14]提出基于PWLCM混沌映射、交叉替换和循环移位以实现比特级加密的图像加密算法。
在上述2类图像加密策略的启发下,本文改进传统的一维Logistic映射,提出一种同时进行置乱与扩散的加密算法。通过增加模运算使传统Logistic映射的混沌参数范围变大,参数范围突破(0,4]的限制,利用该混沌系统设计的加密系统的密钥空间也将扩大。为了使改进Logistic映射在原有参数范围(0,4]中所生成的序列具有更好的混沌特性,本文对改进映射所生成的序列进行比特重排,以使序列具有更好的混沌特性、遍历性、初值敏感性、伪随机性。利用改进Logistic映射生成混沌序列用于预加密以及置乱-扩散阶段的加密。为了抵抗已知明文攻击或者选择明文攻击,加密算法的密钥流设计不仅与密钥有关,同时还和明文图像信息相关联。
1 基于改进Logistic映射的混沌系统本文对经典的一维Logistic混沌映射进行改进,利用改进的Logistic映射构造一个新的混沌系统。用分叉图、Lyapunov指数图以及SP800-22Rvlla的15标准检测对照改进前后混沌系统所生成序列的混沌特性,结果表明,改进后的混沌映射比传统Logistic映射具有更好的混沌特性和更大的参数范围。
一维Logistic映射[15]的数学表达式如式(1)所示:
$ {X}_{n+1}=\mu \times {X}_{n}\times (1-{X}_{n}) $ | (1) |
其中:
为在一维Logistic映射的基础上解决控制参数范围受限、点分布不均等问题,本文对传统的Logistic映射进行改进,具体如下:
$ {X}_{n+1}=\mathrm{m}\mathrm{o}\mathrm{d}\left(r\times {X}_{n}\times (1-{X}_{n}), 1\right) $ | (2) |
其中:
1) 将
2) 将小数点后的二进制序列进行比特重排,将奇数位比特值倒序排在前半部分,将偶数位比特值倒序排在后半部分,得到一个新的数,如图 1所示。
![]() |
Download:
|
图 1 比特重排示意图 Fig. 1 Bit rearrangement diagram |
3) 将第2步中得到的二进制数转化为十进制数,作为新的初始值
比特重排能够提升序列的混沌性能,当系统初值和系统参数发生微小改变时,在刚开始的混沌过渡态中2个轨道的点差别十分小,意味着过渡态中的序列值改变不大,将这样的点列量化为整数,将大概率出现相同的整数值。对所生成的差异小的点列进行比特重排,可以使得重排后的2个更新点列的差异变大,从而使更新序列具有更好的敏感依赖性、伪随机性、遍历性等混沌特性。图 2分别为Logistic映射和基于改进Logistic映射进行比特重排的新混沌映射的分岔图,从中可以看出,本文改进的混沌映射比传统Logistic映射具有更大的混沌参数范围,新混沌系统在(0,4]范围内具有更好的混沌特性,其对所有参数所生成的序列均遍历整个(0,1)状态空间,并且具有更好的分布均匀性。
![]() |
Download:
|
图 2 2种映射的分岔图 Fig. 2 Bifurcation diagrams of two kinds of maps |
对初始值的敏感依赖性是一个可以清晰表达动力系统混沌性质的重要属性,该性质可以用Lyapunov指数来刻画,利用计算机数值计算得到的Lyapunov指数若是正值,说明系统具有混沌性,Lyapunov数值越大,系统的混沌性越强。图 3所示为Lyapunov指数图,其中:图 3(a)为经典Logistic映射的Lyapunov指数图,参数范围为(0,4],混沌区域为
![]() |
Download:
|
图 3 3种映射下的Lyapunov指数情况 Fig. 3 The case of Lyapunov exponent under three kinds of maps |
通过检测序列在2个不同时刻的相关程度,可以进一步刻画序列的伪随机性。将控制参数
![]() |
Download:
|
图 4 混沌序列的自相关和互相关系数图 Fig. 4 Coefficient diagram of autocorrelation and cross correlation of chaotic sequences |
SP800-22Rvlla标准由美国国家标准技术研究所(NIST)提出,专门用于对密码应用中的随机数或伪随机数发生器产生的二进制随机序列进行统计测试。SP800-22Rvlla测试给出了15种测试方法[1],通过每种测试计算一个
![]() |
下载CSV 表 1 SP800-22Rvlla测试结果 Table 1 SP800-22Rvlla test results |
![]() |
下载CSV 表 2 随机旅行测试结果 Table 2 Random travel test results |
![]() |
下载CSV 表 3 随机旅行变种测试结果 Table 3 Random travel variant test results |
从表 1~表 3可以看出,比特重排后的混沌系统所生成的比特序列可以通过15个子测试,而重排前的混沌系统所生成的比特序列只能通过15个子测试中的一部分,说明由新混沌系统所生成的序列具体更好的随机性。
由混沌系统的分岔图、Lyapunov指数图以及SP800-22Rvlla标准测试实验结果可以看出,比特重排后得到的改进混沌系统的随机性能优于比特重排前系统,前者所产生序列的混沌性能更优。
2 图像加密算法 2.1 加密系统密钥在整个加密过程中使用的密钥包括6个部分,分别为
$ Z=\mathrm{m}\mathrm{o}\mathrm{d}\left(\mathop \sum \limits_{x=0, y=0}^{x=M-1, y=N-1}f\left(x, y\right), 40\right)+30 $ | (3) |
其中:
本文加密算法采用预加密、置乱与扩散同时进行的结构,以对灰度图像进行加密,算法流程如图 5所示。
![]() |
Download:
|
图 5 加密算法流程 Fig. 5 The procedure of encryption algorithm |
将大小为
步骤 1 产生混沌序列
步骤 2 生成随机矩阵
步骤 3 预加密。将随机矩阵
步骤 4 分块。将
步骤 5 分块同时进行置乱与扩散操作,具体流程如图 6所示。
![]() |
Download:
|
图 6 置乱与扩散同时操作的流程 Fig. 6 The operation process of scrambling and diffusion is carried out simultaneously |
图 6所示流程具体步骤如下:
1) 将每个矩阵块按行优先原则转换为一维数组,数组长度为
2) 产生2个待置换的位置
$\begin{array}{l} D = {\rm{mod}}({\rm{floor}}(d \times {10^8}), {n_1}) + 1\\ {D_1} = m{\rm{, }}{D_2} = {\rm{mod}}(D \oplus {D_1}, {n_1}) + 1 \end{array}$ | (4) |
3) 判断位置
4) 利用比特平面翻转和动态异或扩散位置
(1) 比特平面翻转。将位置
(2) 动态异或。
5) 交换
6) 利用
步骤 6 在同时进行置乱与扩散操作后,将所有的块合并成一块,顺时针旋转90°,再重复一次置乱与扩散操作,得到新图像
步骤 7 将
本文所提加密算法的解密过程是加密的逆过程,进行反向操作即可无失真地还原明文图像,本文不再详述。
3 实验结果及安全性分析为了验证本文加密方案的性能,采用标准256×256的Lena、Clock和Walter Cronkite灰度图像进行实验,加密系统的密钥设置为:
![]() |
Download:
|
图 7 本文方案的加密结果 Fig. 7 The encryption results of this scheme |
基于改进Logistic映射的混沌图像加密系统的密钥包括
利用直方图可以直观地看出一幅图像的像素值分布特征,为了进一步从客观上说明直方图的均匀性,本文利用
明文图像在水平、垂直、对角方向上的相邻像素之间相关性都较强,理论上而言,通过加密系统加密后的密文图像在各个方向上的相关性很弱才表明加密系统的加密效果理想。为了测试密文图像的相邻像素相关性,在密文图像各个方向上随机选取2 000个相邻像素值,通过式(5)、式(6)计算相邻像素的相关性系数,计算结果如表 4所示。
$\begin{array}{l} {r_{xy}} = \frac{{{\rm{cov}}(x, y)}}{{\sqrt {D\left( x \right)} \times \sqrt {D\left( y \right)} }}\\ {\rm{cov}}(x, y) = \frac{1}{N}\sum\limits_{i = 0}^N {({x_i} - E(} x))({y_i} - E(y)) \end{array}$ | (5) |
$ E\left(x\right)=\frac{1}{N}\mathop \sum \limits_{i=0}^{N}{x}_{i} \text{,} D\left(x\right)=\frac{1}{N}\mathop \sum \limits_{i=0}^{N}({x}_{i}-E{\left(x\right))}^{2} $ | (6) |
![]() |
下载CSV 表 4 相邻像素相关性系数统计结果 Table 4 Statistical results of correlation coefficient of adjacent pixels |
从表 4可以看出,明文图像在各个方向上的相邻像素相关性很强,而密文图像在各个方向上的相邻像素相关性很弱。与文献[16-17]算法相比,本文算法可以降低相邻像素的相关性。
3.3 敏感性分析敏感性包括密钥敏感性、明文敏感性等,是指密钥或者明文发生微小改变时加密后得到的2幅密文图像是否有显著差别。衡量2幅图像的差别主要有定性方式和定量方式2种方法:定性方式直接显示2幅图像的差异;定量方式主要通过计算像素变化率(NPCR)和归一平均变化强度(UACI)进行衡量。NPCR和UACI的计算公式分别为式(7)和式(8),其中,函数
$ \mathrm{N}\mathrm{P}\mathrm{C}\mathrm{R}({C}_{1}, {C}_{2})=\frac{1}{MN}\mathop \sum \limits_{i=1}^{M}\mathop \sum \limits_{j=1}^{N}\left|D\left({C}_{1}(i, j), {C}_{2}(i, j)\right)\right|\times 100\mathrm{\%} $ | (7) |
$ \mathrm{U}\mathrm{A}\mathrm{C}\mathrm{I}({C}_{1}, {C}_{2})=\frac{1}{MN}\mathop \sum \limits_{i=1}^{M}\mathop \sum \limits_{j=1}^{N}\frac{\left|{C}_{1}(i, j)-{C}_{2}(i, j)\right|}{255}\times 100\mathrm{\%} $ | (8) |
密钥敏感性强是指在加密或解密过程中,密钥发生微小的变化,在加密同一个明文图像得到的2个密文图像或者解密同一个密文图像得到的2个明文图像之间有巨大差异。对于密钥
![]() |
下载CSV 表 5 加密过程的密钥敏感性 Table 5 Key sensitivity of encryption process |
![]() |
Download:
|
图 8 部分解密结果 Fig. 8 Partial decryption results |
拥有良好明文敏感性的加密算法可以有效抵抗差分攻击。使用同一密钥对差别微小的2个明文图像进行加密,得到的2幅密文图像相差较大,即说明加密系统具有明文敏感性。随机改变明文图像的一个位置像素值或一个灰度级来产生具有微小差别的2幅明文图像,重复随机选取像素位置100次,经过相同密钥加密后得到2幅密文图像,计算2幅密文图像之间的NPCR和UACI值。100个NPCR和UACI值的平均结果如表 6所示,从表 6可以看出,本文方案的NPCR和UACI值接近NPCR和UACI的数学期望值(99.609 4%和33.463 5%),说明本文加密系统具有很好的明文敏感性,与文献[18-19]算法相比,本文算法在抵御差分攻击上具有更好的性能。
![]() |
下载CSV 表 6 明文敏感性对比结果 Table 6 Plaintext sensitivity comparison results |
信息熵可以反映图像的随机性或不确定性。如果一幅图像随机性越强,那么其信息熵越接近于数学理论值[20]。信息熵的计算公式为:
$ H=-\mathop \sum \limits_{i=0}^{T}p\left(i\right)\mathrm{l}\mathrm{b}p\left(i\right) $ | (9) |
其中:
![]() |
下载CSV 表 7 信息熵对比结果 Table 7 Information entropy comparison results |
本文对经典Logistic映射进行改进,添加模运算并对所生成的序列进行比特重排,使得新混沌映射所生成的序列具有更好的混沌特性,并利用改进混沌系统所生成的序列设计一个包含预加密且同时进行置乱与扩散操作的图像加密方案。在预加密阶段对图像像素进行预处理,扩散图像的像素值,然后利用改进Logistic映射随机不重复生成置乱-扩散的像素位置,其中,由简单的交换实现置乱,对像素的比特平面进行翻转和动态异或完成扩散。实验结果表明,该图像加密方案具有较高的安全性,可以抵抗暴力攻击、差分攻击、统计攻击、明文攻击等。本文是对标准256×256灰度图像进行加密与解密研究,下一步考虑将加密方案推广到彩色图像领域,同时在加密性能与加密时间2个方面进行折中以获得更好的加密效果。
[1] |
ZHANG Y. Chaotic digital image cryptosystem[M]. Beijing: Tsinghua University Press, 2016. (in Chinese) 张勇. 混沌数字图像加密[M]. 北京: 清华大学出版社, 2016. |
[2] |
WANG X, SUN H. A chaotic image encryption algorithm based on improved joseph traversal and cyclic shift function[J]. Optics & Laser Technology, 2020, 122: 10584-10590. |
[3] |
HUA Z, ZHOU Y, HUANG H. Cosine-transform-based chaotic system for image encryption[J]. Information Sciences, 2019, 480: 403-419. DOI:10.1016/j.ins.2018.12.048 |
[4] |
ALAWIDA M, SAMSUDIN A, TEH J S. Enhanced digital chaotic maps based on bit reversal with applications in random bit generators[J]. Information Sciences, 2020, 512: 1155-1169. DOI:10.1016/j.ins.2019.10.055 |
[5] |
WANG X, ZHANG Y, ZHAO Y. A novel image encryption scheme based on 2-d Logistic map and DNA sequence operations[J]. Nonlinear Dynamics, 2015, 82(3): 1269-1280. DOI:10.1007/s11071-015-2234-7 |
[6] |
BROUMANDNIA A. Designing digital image encryption using 2D and 3D reversible modular chaotic maps[J]. Journal of Information Security and Applications, 2019, 47: 188-198. DOI:10.1016/j.jisa.2019.05.004 |
[7] |
BROUMANDNIA A. The 3D modular chaotic map to digital color image encryption[J]. Future Generation Computer Systems, 2019, 99: 489-499. DOI:10.1016/j.future.2019.04.005 |
[8] |
HUA Z, JIN F, XU B, et al. 2D Logistic-Sine-coupling map for image encryption[EB/OL]. [2020-10-01]. http://www.huazhongyun.cn/wp-content/themes/homepage/Paper_PDF/2D%20Logistic-Sine-Coupling%20Map%20for%20Image%20Encryption.pdf.
|
[9] |
ARTILES J, CHAVES D, PIMENTEL C. Image encryption using block cipher and chaotic sequences[J]. Signal Processing: Image Communication, 2019, 79: 24-31. DOI:10.1016/j.image.2019.08.014 |
[10] |
LIU D D, ZHANG W, YU H, et al. An image encryption scheme using self-adaptive selective permutation and inter-intra-block feedback diffusion[J]. Signal Processing, 2018, 151: 130-143. DOI:10.1016/j.sigpro.2018.05.008 |
[11] |
ENAYATIFAR R, GUIMARAES F G, SIARRY P. Index-based permutation-diffusion in multiple-image encryption using DNA sequence[J]. Optics and Lasers in Engineering, 2019, 115: 131-140. DOI:10.1016/j.optlaseng.2018.11.017 |
[12] |
YANG J Y, WU H. Color image encryption algorithm based on chaotic system and dynamic DNA coding and operation[J]. Computer Engineering, 2018, 44(2): 151-157. (in Chinese) 杨吉云, 吴昊. 基于混沌系统和动态DNA编码与运算的彩色图像加密算法[J]. 计算机工程, 2018, 44(2): 151-157. DOI:10.3969/j.issn.1000-3428.2018.02.027 |
[13] |
XIE G B, WANG T. A chaotic image encryption algorithm based on pixel scrambling and bit substitution[J]. Microelectronics & Computer, 2016, 33(3): 80-85. (in Chinese) 谢国波, 王添. 基于像素置乱和比特替换的混沌图像加密算法[J]. 微电子学与计算机, 2016, 33(3): 80-85. |
[14] |
HASHEMINEJAD A, ROSTAMI M J. A novel bit level multiphase algorithm for image encryption based on PWLCM chaotic map[J]. Optik, 2019, 184: 205-213. DOI:10.1016/j.ijleo.2019.03.065 |
[15] |
PHATAK S C, RAO S S. Logistic map: a possible random-number generator[J]. Physical Review E, 1995, 51(4): 3670-3678. DOI:10.1103/PhysRevE.51.3670 |
[16] |
LIU W C, LIU Y P. Image encryption algorithm based on Logistic chaos scrambling[J]. Scientific and Technological Innovation Information, 2020(36): 125-126. (in Chinese) 刘为超, 刘义沛. 基于Logistic混沌置乱的图像加密算法[J]. 科学技术创新, 2020(36): 125-126. DOI:10.3969/j.issn.1673-1328.2020.36.055 |
[17] |
LI K, ZHANG T. Application of Logistic mapping in digital image encryption algorithm[J]. Information & Communi-cations, 2017(1): 139-140. (in Chinese) 李凯, 张婷. Logistic映射在数字图像加密算法中的应用[J]. 信息通信, 2017(1): 139-140. |
[18] |
NIU Y, ZHANG X C. Chaotic image encryption algorithm based on bit permutation and DNA sequence[J]. Computer Engineering and Applications, 2017, 53(17): 130-136. (in Chinese) 牛莹, 张勋才. 基于比特置换与核酸序列库的混沌图像加密算法[J]. 计算机工程与应用, 2017, 53(17): 130-136. |
[19] |
HU C J, RUAN C, NIU Z X. Image encryption algorithm based on improved Logistic map[J]. Computer Systems & Applications, 2019, 28(6): 125-129. (in Chinese) 胡春杰, 阮聪, 牛智星. 基于改进Logistic映射的图像加密算法[J]. 计算机系统应用, 2019, 28(6): 125-129. |
[20] |
SHANNON C E. Communication theory of secrecy systems[J]. Bell System Technical Journal, 1949, 28(4): 656-715. |