欧锻灏, 孙 伟, 林 博
(1. 中山大学信息科学与技术学院,广东 广州 510006;2. 中山大学软件学院,广东 广州 510006)
随着多媒体技术和互联网技术的发展,越来越多的个人和公众信息特别是多媒体信息在公开的网络上方便地传输。因而,图像信息的安全问题备受人们的关注。为了保证图像信息的安全,常用的处理方法是对图像进行加密处理,使得攻击者无法从秘密图像中得到任何信息。由于该课题的重要性,图像加密的研究吸引了广大学者的关注。目前,图像加密主要通过图像置乱,灰度值替代或两者相结合的方法实现。丁玮等[1]提出了一种基于 Arnold置乱的数字图像加密方案,该方法虽然简单易行,但是Arnold置乱过程速度较慢,且密钥短。置乱方法中Arnold置乱[1]和 Gray码置乱[2]仅仅对原图像的像素的位置进行重排列,并不改变原图像的颜色直方图,因而容易受到统计分析方法的攻击而被破译,安全性不高。而在灰度替换的图像加密过程中,采用的方法主要是以形式固定的矩阵进行置乱,图像的置乱效果和安全性往往依赖于置乱的次数。
目前许多学者致力于研究新的图像加密方案[3-4],以提高方案的安全性和效率。但在这些方案中大都没有检验密图完整性的能力。为了扩展应用,本文基于组合理论知识和可逆整数矩阵,设计出一个具有完整性检验能力的图像加密方案。
文献[5]基于组合理论的性质,利用一个整数导出了可逆整数矩阵和其逆矩阵的表达式。设给定整数x≥0,由关系式
为元素可以构造一个与A(x)互逆的n阶整数矩阵
由文献[5]的证明可知,所构造的矩阵A(x)和B(x)互逆,且矩阵均由x决定。在图像加密过程中,x可以作为加解密的密钥。
但是由于计算组合数的缘故,导出生成的可逆矩阵元素值可能非常大,以致超过256灰度级的范围。为了解决这个问题,将以上得到的可逆矩阵的所有元素模M。显而易见,模M后的矩阵同样是模可逆的,即
一幅灰度图G可以视为一个元素值为[0,255]的整数矩阵。本方案首先给出密钥x、M= 256、以及密钥矩阵的大小blocksize,然后根据第1节描述的算法,产生一对模256的可逆矩阵A和B,其值的范围为[0,255]。在加密方案中,矩阵B用来作为加密的密钥,而A用来作为解密的密钥。A和B均可由x导出生成,在加密解密过程中,仅需要把x作为密钥保存即可。
加密前对秘密图像进行预处理,即将原始图像的像素加128,目的是为了处理全黑的特殊情况。解密恢复时,把得到的结果相应的减去128。假定,经过预处理之后的灰度图像为
其中gij为图像坐标(i, j)处的灰度值。
加密过程分为两个过程,具体描述如下:
Phase 1 将密钥矩阵B从图像G的左上角,以1/4× b locksize 的步骤,从左到右,从上到下覆盖地扫描到右下角,得到G'。移动过程中,密钥矩阵B和扫描经过的图像块block的作用方式
Phase 2 将密钥矩阵Β从G'的右下角,以1/4× b locksize的步骤,从右到左,从下到上覆盖地扫描到左上角,得到G''。移动过程中,密钥矩阵B和扫描经过的图像块block的作用方式
加密过程中的扫描方式,决定了块的变化将对其他块的恢复产生影响。而扫描过程中,加密矩阵和矩阵块的作用方式,决定了块内点的变化将对块内其他点的恢复产生影响,这就增加了像素点之间的相关性。这样,加密图像出现微小变化,将影响到恢复图像的全局变化。因此,该图像的加密方案是脆弱的。该性质可以用作图像信息的完整性检验。
解密密钥A同样可由x生成导出,且A与B是模256的可逆矩阵。解密过程是加密的简单逆过程,也分为两个阶段,具体流程如下:
Phase 1 将密钥矩阵A从G''的左上角,以1/4× b locksize 的步骤,从左到右,从上到下覆盖地扫描到右下角,得到G'。而移动过程,密钥矩阵A和扫描经过的矩阵块block的作用方式
Phase 2 将密钥矩阵A从G'的右下角,以1/4 × b locksize的步骤,从右到左,从下到上覆盖的扫描到左上角,得到图像G。而移动过程中,密钥矩阵A和扫描经过的矩阵块block的作用方式
最后,将图像G的像素按照预处理的逆过程减去128,便可得到原始的秘密图像。
在实验中,令密钥x=1, b locksize= 3 2,。根据第1节描述的算法,产生一对模256的可逆整数矩阵A和B,作为密钥矩阵。选择复杂图像 Fishingboat,Lena,Clock,Baboon和简单黑白图像S作为测试图像,所有测试图像大小均为256× 256。系统环境 Windows7,安装内存 2G,CPU 2.90GHZ,实验测试环境matlab7.9。实验结果如图1所示。
图1的实验结果表明,不管是复杂的自然图像,还是轮廓明显的简单黑白图像,加密后的密图是一个均匀的噪声图。而且,当密图中的某一个像素发生微小变化时,解密得到的图像仍然是噪声图,得不到原始图像的任何信息,所以该加密方案是脆弱、易损的。通过人眼视觉可以判断该秘密图像是否被篡改,从而检验密图信息的完整性,不需要任何复杂的计算。实验结果表明了图像加密方案的有效性。
本文为了客观的描述加密图像与原始图像的差别,利用两图像的相关系数作为图像相似性的客观度量[6]。
图1 图像 Fishingboat,Lena,Clock,Baboon和S的实验结果
为了比较,本文对 Lena图像分别利用本文方案和Arnold置乱方案[7]进行测试,实验结果如图2所示。结果表示,当密图中的某一像素发生微小变化时,利用本文方案解密得到的恢复图依然是个噪声图(与原始图像的相关系数ρ= 0 .0005),而 Arnold方案却可以恢复出原始图像的许多信息(与原始图像的相关系数ρ= 0 .9999)。
图2 Arnold置乱算法与本文算法的实验结果
在进行安全性分析前,介绍文献[8]所描述的一个定理,即ZM上n阶可逆矩阵的个数为
本文提出一种基于可逆矩阵的具有完整性检验能力的图像加密方案。本方案采用替代加密,而不是置乱加密,可以抵抗直方图的统计攻击。密图完整性的检验只需凭借人类视觉系统,不需要任何复杂的计算。本方案可以应用于数字图像隐藏的预处理,以提高信息的隐蔽性。此外,本文方案可以简单地扩展到彩色图上的应用,实现彩色图的加密,具有良好的扩展性和应用性。
[1]丁 玮, 闫伟齐, 齐东旭. 基于 Arnold变换的数字图像置乱技术[J]. 计算机辅助设计与图形学学报,2001, (4): 338-341.
[2]邹建成, 李国富, 齐东旭. 广义 Gray码及其在数字图像置乱中的应用[J]. 高校应用数学学报 A 辑(中文版), 2002, (3): 363-370.
[3]Zhou Nanrun, Dong Taiji, Wu Jianhua. Novel image encryption algorithm based on multiple-parameter discrete fractional random transform [J]. Optics Communications, 2010, 283(15): 3037-3042.
[4]Xu Shujiang, Wang Yinglong, Guo Yucui, et al. A novel image encryption scheme based on a nonlinear chaotic map [J]. IJIGSP, 2010, 2(1): 61- 68.
[5]董永胜. 一种整数矩阵求逆方法的证明[J]. 长春师范学院学报, 2007, (4): 4-5.
[6]朱永松, 国澄明. 基于相关系数的相关匹配算法的研究[J]. 信号处理, 2003, (6): 531-534.
[7]陈 铭, 平西建. 基于 Arnold变换的图像信息伪装算法[J]. 计算机应用研究, 2006, (1): 235-238.
[8]张胜元. Z_n上m阶可逆矩阵的计数[J]. 福建师范大学学报(自然科学版), 1999, (1): 18-20.