基于多重菲涅耳衍射变换和相位密码板,我们设计了一种新的图像文件加密方法,该方法将待加密的明文图像文件在多重离散菲涅耳衍射变换和相位密码板的共同作用下,变换为一个具有随机码特征的密文矩阵;衍射距离和相位密码板是主要的密钥,只有当所有密钥都正确时,才能成功地解密密文文件。
一、图像文件加密理论模型和计算方法
1、图像文件加密过程
所谓图像文件加密,就是对图像文件作多重菲涅耳衍射变换见图1。图中Z1、Z2、Z2'、Z3'、…、Zn'示意空间距离;P0、P1、P1'、P2、P'2、P3'、…、Pn'示意观察或计算参考平面,相位密码板位于各计算参考面P'2、P3'、…、Pn'之前;I。、I1、I1'、I2、I'2、I3'、…、In'示意各平面处的光场分布。位于平面Po处的图像1。在平行光照射下,经空间距离Z1传播到平面P1;再经焦距为厂的透镜传播到平面P1’;从此开始,在距离为(Z2'、Z3、…、Zn')的多重菲涅耳衍射变换和相位密码板的共同作用下,在平面Pn处获得原图像的多重菲涅耳衍射变换结果In'—所谓密文,从而完成对图像文件加密过程,密钥就是衍射距离、相位密码板等。需要说明的是:图中的实线可对应实际光路,而虚线对应数值计算。
由光学菲涅耳衍射变换知,大小为(N×N)的图像I0,经过距离Z1由平面Po传播到平面P1时变换为I1,于是有:
式中,忽略了一些无关紧要的系数和常量相位因子,式中△0和△1分别是平面Po和P1处的像素间距。
为方便起见,用符号DFDT( Discrete-Fresnel-Diffraction-Transform)将式(1)标记为:
其意为I0经距离Z1由离散菲涅耳衍射变换成I1。
随后,I0经透镜的作用变为‘,即增加一相位因子,如式(3):
由式(1)不难看出,所谓离散菲涅耳衍射变换实际上是离散傅里叶变换的一种变形,就是在空域和频域各增加了一个二次相位因子。由于二次相位因子带有光波长和衍射距离,因此可利用这一特性来加密图像,但这种加密的密钥只是几个简单的数,加密系统的安全性不能确保,因此可通过在空域和频域再增加一个相位密码板来提高系统的安全性,而相位密码板是这样形成的:将大小为(N×N)的二值图像Ie0经距离z。作离散菲涅耳衍射变换,然后提取其相角,从而得到所谓相位密码板矩阵,如式(4)、(5)。
从平面P1开始,In'经一系列衍射距离(Z2'、Z3'、…、Zn')和相位密码板Φe,作多重菲涅耳衍射变换,最后在平面Pn'处变换成In',如图1中的虚线所示,于是就完成了所谓加密过程,如式(6):
由此可知密文矩阵In'为一复矩阵,如将其作为图像直接传输或存储,则往往因其虚数部分遭舍弃而导致解密失败。为尽可能地保留复矩阵In'的信息,可采取以下做法:设IR和II分别为复矩阵In'的实部和虚部,由于矩阵IR和II有些值是负值,可将矩阵IR和II变换为(0~1)的正数(这样处理便于一些图像处理软件来显示和存储该数据),然后将两矩阵IR和II按照式(7)合并扩充为(2N×2N)的大矩阵Ip。
于是初始密文复矩阵I1'转化为最终密文矩阵Ip,它是一个正实数值矩阵,作为原始明文图像的拥有者,将其拥有的计算式(1~6)中的照射光波长λ、透镜焦距f、一系列衍射距离和相位密码板等作为加密密钥。
2、解密过程
如拥有者想从密文图像Ip中解密恢复原始明文图像I0,那么他应首先由Ip来重构In',即有:
随后对In'进行上述加密过程的逆运算,即将In'经一系列距离反向作菲涅耳衍射变换,且每次都通过相位密码板的复共轭,最后可恢复得到I1',如式(9):
至此,还应将I1'向前作菲涅耳衍射变换,如果距离Z2满足:
则在平面P2处可观测得到原图像I0的倒像I2,光路如图1中的实线,相应的数值计算结果如式(11),式中I0(一m,一n)表示原图像I0的倒像。若取I2的模,则式中的二次相位因子消失,获得原图像I0的倒像,如式(12):
二、仿真计算结果和讨论
1、 图像文件加密和解密
图2为加密用图,其中图2(a)为(128×128×2 bit)原始相位密码母板,图2(b)为其经离散菲涅耳衍射变换处理所得的相位密码板矩阵。为计算方便设定所有观察面的像素间距△=O.1 mm,照射光波长λ= 632.8 nm,物距z1 - 31 mm,焦距f=20 mm,相位密码母板作菲涅耳衍射的衍射距离ze=53 mm,图2(c)为(128×128×8 bit)原始灰度莉娜图像I0,此图需加密。
原始莉娜图像I0经一系列衍射距离和相位密码板,作多重菲涅耳衍射变换,实现加密,结果如图3。其中图3(a)和(e)分别是原莉娜图I0在平面P1’的光场分布I1'的实部和虚部,图中有典型的菲涅耳衍射变换的圆圈结构。从平面P1'开始,随后一系列衍射距离为(Z2'、Z3'、…、Z11')一(23,1 7,29,31,21,27,43,11,19,1 3)mm,最后在平面P'11处得到原莉娜图I0。的11重菲涅耳衍射变换I11',其实部和虚部经度缩放处理成(0,1)的正数,分别如图3(d)和(h)。从中不难看出I'11已明显和I'1不同,已变换成近随机分布。应该说明的是:图3(b)和(f)、(c)和(g)分别是第二次和第三次变换的结果I2'和I3'的实部和虚部。第二次变换I2'还有些特征结构,然而从第三次变换开始,变换的结果几乎是随机乱码。为进一步增强加密系统的安全性,采取第11次变换的结果I'11作为最终密文。
现将I’11的实部I’R和虚部II按照式(7)的编排,拼成大矩阵Ip。由于Ip的任何一个元素都是(0,1)正数,因此很方便被一些图像显示软件来显示、传输和存储,Ip的显示结果如图4(a),Ip即为所需的最终密文图像,可将此图像通过公共信道传输出去或存储起来。图4(b)为从图4(a)中解密恢复出来的图像,是原始图像I0的倒像。
2、图像算法的鲁棒性实验
将编排处理后的最终密文图像Ip进行JPEG有损压缩、剪切、叠加噪音等处理,然后进行解密,以检验本算法的鲁棒性是否“健壮”.对图像Ip进行JPEG有损压缩,相应的压缩品质分别为8、5、3、1,然后从中解密恢复图像,结果见5(a)。将图像Ip进行剪切,见6(a)~(d),其解密恢复的图像相应地如图6(e)~(h)。图7(a)、(b)、(c)、(d)为从叠加随机分布高斯型噪音的图像Ip中恢复的图像,对应的噪点量分别为3、7、10、13。图8为从显示屏幕上硬拷贝获取的图像中解密出来结果。由于图像是正实数值编码,因此通过显示屏幕硬拷贝也能从中恢复图像。
3、图像加密算法的安全性分析
(1)抗不正确的解密码攻击
本文采用的加密密钥有:光波长λ、物距Z1、透镜焦距f、10次衍射距离、相位密码板及其衍射距离Ze。下面尝试用一个不正确的密钥,如光波长、透镜焦距、物距Z1、衍射距离和密码模板,并且假设其它密钥都正确的情况下来解密密文图像Ip,解密结果如图9。图9(a)为用不正确的光波(λ=630 nm)解密的结果(小数点后的值表示不正确的数据部分),图9(b)为不正确的透镜焦距f=20.1 mm的解密结果,图9(c)、(d)、(e)、(f)、(h)分别为不正确的距离密钥Z1= 31.4 mm、Z2'=23.1 mm、Z6'=21.1 mm、Z8'=43.1nun、Z11'=13.1mm的解密结果,需要说明的是图9(h)仅将密码母板沿对角线往对角线右下方平移一个像素来解密的结果,从中可看出只有所有解密码都正确时,才能解密出正确图像。
(2)加密系统安全性分析
对于(128×128)大小的图像来说,本文所采用的相位密码板的密钥空间将达到2128 X128;至于其它密钥,按照两位有效数字来保守估算,其密钥空间将达到102X14;因此,本文的密钥空间将是:
在一台普通个人计算机(配置:CPU1.4G,RAM 768M)和Matlab软件平台上,本文加密计算时间约为1 min。若采取穷举法来攻击本加密系统,其计算时间将是无法承受的。
对双随机相位密码系统,用“已知明文攻击”的相位迭代恢复算法来破译密文,需经1 000次迭代计算,才能获得含噪音的不完全解密的图像,该解密图像与原图像相差很大,而本加密系统采取了10次菲涅耳衍射变换和相位密码板作用,相当于采用10个随机相位密码矩阵,若采取所谓“已知明文攻击”的相位迭代恢复算法来进行破译,则至少需要1 0009次迭代计算;再考虑其它三个密钥:光波长、物距、焦距,则总共要1 0009×106次迭代计算。若每次迭代计算时间按照1 min来对待,采用迭代计算,其花费的时间也是不可接受的.此外还可以预料:随着多重菲涅耳衍射变换和相位密码板作用次数的增加,即使采用“已知明文攻击”的相位迭代恢复算法能解密图像,但是解密出来的图像质量非常差,甚至失败,相对于“相位迭代恢复算法”攻击,本文加密算法是一个容易过程,徜若需要,可以增加多重菲涅耳衍射变换和相位密码板作用的次数,却不会增加太多的加密计算时间;但是会给用“已知明文攻击”的相位迭代恢复算法来破译密文变得更加困难,保守估算:每增加一次变换,就会使破译攻击付出1 000次迭代计算的代价,而且还会使解密图像质量大大下降。
对双随机相位密码系统来说,由于采用“双随机相位矩阵”作密钥,其数据量巨大,即密钥的开销大,使密钥管理和使用显得不方便,但是,本加密系统,只采用一个相位密码矩阵和十几个简单的数作为密钥,而且相位密码矩阵是由一个简单二值图像(或符号或文字等)在距离密钥控制下作菲涅耳衍射变换而来,密钥开销很小,但是效果却与采用随机相位矩阵加密的效果相近一只需要作三次菲涅耳衍射变换、经两次相位密码板作用,就使密文变成随机码。因此,可以看到本加密算法密钥开销较小,密钥管理和使用很方便,安全性高。
4、关于实现光学加密和解密存在的问题分析
从前面的数值计算可知:只有当相位密码板的位置精确匹配时,解密才能成功;哪怕是错位一个像素,都会导致解密失败。在数值计算上,实现相位密码板的匹配不存在任何困难,于是加密和解密很容易完成,但是要在光学系统中实现多重菲涅耳衍射变换加密和解密,存在很大困难,必须先要解决以下几个主要技术难题:一是相位密码板的精确匹配和定位;二是加密图像的记录和重建;三是多重衍射的效率,相位密码板的位置可由高准确度的五维微调架控制,再辅以激光准直技术,可以精确控制其位置。加密图像的记录和重建可采用光全息技术实现,采用较大功率的激光光源,可以提高衍射的强度。当然,这需要今后进一步的实验证实。
小知识之菲涅耳衍射
Fresnel diffraction 在非成像系统中,当光源或观察屏之一与孔径或碍物之间的距离为有限时产生的衍射。这时衍射积分式中的相因子(见光的衍射)不再像夫琅和费衍射情那样,是波阵面次波坐标的线性函数,这种衍射的数分析就复杂多了;可根据惠更斯-菲涅耳原理,用简的半波带和细致的矢量图解法,可以求得圆孔圆屏在上的衍射光强。