基于构造结合混沌随机掩码的虚拟光学成像系统,利用信息光学基本理论和透镜成像系统原理,我们提出了一种基于混沌随机掩码的虚拟光学成像系统的图像加密算法和解密算法。该加密算法有效地利用了混沌映射对初始条件的极端敏感性和混沌序列的高度随机性,来提高加密系统的安全度。
一、混沌掩码虚拟光学加密原理与算法
1、混沌映射
混沌是在确定性非线性系统中,不需附加任何随机因素出现的一种类似随机行为,混沌系统具有一系列重要特性,如对初始条件的极端敏感性;轨道在整个相空间具有伸长与折叠的特性和可以再生的类随机性。这些特性使得混沌映射与密码学的要求很相吻合。为了寻求新型的高效信息加密方式,混沌映射已被应用到信息加密技术中。Logistic映射是一种最常见的混沌映射,其系统由下列迭代公式表示:
式中:n为迭代次数;z0为系统初始值;μ为系统参数(0<μ≤4),当3.57≤μ≤4时,系统处于混沌状态。由Logistic映射产生的所有序列都敏感地依赖于初始条件;此外,Logistic映射的所有轨道在(0,1)范围内稠密。:给定两个稍微不同的初始值,经过多次迭代后将产生两个截然不同的伪随机序列。混沌序列的这种对初始条件的高度敏感性,可提高加密系统的安全性。
2、虚拟光学成像系统理论
考虑一个加入混沌随机模板(用于模拟随机光场)的单透镜光学成像系统,如图1所示。
图中,d0是物平面(信息平面)到成像透镜前表面的距离, di是透镜后表面到像平面的距离。物平面,透镜前表面,后表面以及像平面的复振幅分布分别表示为Uo(xo,yo),UL1(ζ,η),UL2(ζ,η)和Ui(xi,yi)。假定信息平面和混沌随机模板由相同选定波长的相干光照明,且此成像系统中所涉及的衍射都满足菲涅耳近似条件。根据傅里叶光学,虚拟光波从物平面到透镜前表面的传播过程可用菲涅耳衍射变换公式(2)来描述;虚拟光波从透镜后表面到像平面的传播过程也可用菲涅耳衍射变换来描述。
式中:用FT{}表示傅里叶变换;λ为光波波长。为了在数字域实现上述透镜成像过程并利用它进行信息加密,需要对Uo(xo,yo)进行NxN的采样,沿x0和yo方向的采样间隔分别为Δxo和Δyo,这样x0和yo可以用kΔxo和lΔyo替换,其中k,l是0到N-1之间的整数。同理,ζ和η以用mΔζ, mΔη替换:空间频率fx和fy用mΔζλd0和nΔηλd0替换,m,n也是0到N-1之间的整数。离散化过程可以用下面的公式表示:
根据Shannon采样定理,可以得到:
考虑透镜光圈大小有下列关系存在:
根据公式(3)~(7)可以得到菲涅耳变换的离散表达形式,称为离散菲涅耳变换(Discrete Fresnel Diffraction,DFD),其中从物平面到透镜前表面的DFD计算公式如公式(8)所示:
由上式可以看出离散菲涅耳变换的计算可由信息平面的复振幅分布函数Uo(k,l)与二次因子之积的离散傅里叶变换(DFT)实现。因此可运用快速傅里叶变换(FFD来计算式中的离散傅里叶变换以提高运算速度。另外,对透镜的复振幅透过率公式(8)也要进行采样,得到其离散形式:
式中:m,n=0,1,.…,N-1,为透镜焦距。
此外,像距参数di、物距参数do和透镜焦距,之间的关系满足下列透镜成像定律:
3、加密算法解密算法描述
在加密过程中,用离散菲涅耳变换(DFD)计算信息平面(用Uo表示)和混沌随机模板(用UM表示)到透镜前表面的衍射,衍射距离分别为d0和d,其中d=d1+d2。它们在透镜前表面的菲涅耳衍射图案将发生干涉,得到干涉图,干涉图又经透镜的复振幅透过率函数转换到达透镜的后表面。将成像透镜后表面的复振幅分布(用UL2表示)作为密文,它可以通过通信链路传送。下面的方程可以描述上述加密过程:
在加密过程中,除了d0,f和λ以外,混沌随机模板编码的生成参数和它到透镜前表面的衍射距离d也为设计多维密钥提供了可能的途径,混沌随机模板可由混沌系统参数及系统的初值zo决定4这样,由五元组(do,f,λ,d,zo)构成了加密系统的独立密钥空间,这使得不知道正确密钥的攻击者很难解密出明文图像。
解密过程相当于求物体在虚拟光学成像系统像平面形成的实像。由于接收方得到的密文信息为分布函数UL2(m,n),为了正确解密,需要求出Uo(x0,yo)在成像平面的实像。利用五元组(do,f,λ,d,zo)密钥参数,求Uo(x0,yo)在像平面的复振幅分布步骤如下:
(1)由z0'参数生成混沌随机模拟光场UMl(k,f),然后通过衍射距离为d的DFD变换以及透镜的复振幅透过率函数作用,得到混沌随机模拟光场在透镜后表面的复振幅分布函数UM2(m,n):
(2)求出原物体信息在透镜后表面的复振幅分布函数U1(m,n):
(3)对U1 (m,n)作衍射距离为di的DFD变换,得到原信息在像平面的光强复振幅分布函数Ui (m,n),即恢复的加密图像分布函数:
需要说明的是,恢复的加密图像分砸函数Ui (m,n)-般是复数函数,设Ui (m,n)的实部为RUi (m,n),虚部为IUi(m,n),则图像信息可以用复振幅的模表示:
根据透镜成像规律,由|Ui (m,n)|表示的图像是原图像的倒立实像,做坐标对称翻转变换即可得到正立图像vi(m,n):
式中:m,n=0,1,2,...,N-1。
二、仿真实验结果
在数值模拟实验中,选择如下参数:虚拟光波波长λ=618 nm,虚拟物距do=1.5 m,虚拟透镜焦距产25 cm,采样点数N=256(即待加密图像文件大小为256×256);Logistic混沌系统参数μ=4,混沌系统初值zo=0.247,混沌随机光场模板到透镜前表面的衍射距离d=1.5 m,待加密图像文件为256x256的8位灰度图像Lena,如图2(a)所示。
采用Matalab7仿真平台,将原始图像信息映射成[o,1]之间的实数表示,即u0(k,l)∈[o,1]。为了提高混沌随机模拟光场对初始值的敏感性,由混沌初值开始先进行3 000次预迭代,再将以后迭代生成的序列作为随机模拟光场UM (k,z),所得随机掩码模拟光场如图2(b)所示。
图3(a)和(b)是采用不同衍射距离d所得到的加密图像文件,当混沌随机模拟光场模板到透镜前表面的衍射距离d与物平面到透镜前表面的衍射距离如相等时,图像文件加密后可以隐约看到原图像的边缘轮角;而当d小于无时,原图像文件的边缘轮廓将在加密图中逐步消失,且当d比d0小得越多时,图像文件加密的效果越好。
图4是解密端采用的参数(do,f,λ,d,zo)正确,仅λ不正确时((a)λ误差0.02 nm,(b)λ误差0.000 02 nm),得到的解密结果图像。图5是解密端采用的参数((do,f,λ,d,zo)正确,仅f不正确时((a)f误差0.2 mm,(b)f误差0.02 mm),得到的解密结果图像。
图6是解密端采用的参数(do,f,λ,d,zo)正确,仅d不正确时((a)d误差0.000 8 mm,(b)d误差0.000 04 mm),得到的解密结果图像。图7是解密端采用的参数(do,f,λ,d,zo)正确,仅zo不正确时((a)z0误差10-16,(b)zo误差10-17),得到的解密结果图像。即使数字化混沌受到计算机有限精度实现的限制使得混沌特性有所损失,但由于采用双精度实数模拟混沌随机场,使系统仍然保持对初值的高度敏感性。实验证明了这一结论,只要使解密时所用的系统初值误差超过10-17,就不能正确解密。因此,z0密钥的数字位数可达到16位十进制数字,也就是说,仅z0密钥空间大小将为1016×1016×1016 =1048≈2159,相当于=进制159 bit长的密钥空间(远比128 bit密钥的DES密码算法的密钥长)。所以,密码系统足以抵抗现有硬件条件下的强力分析攻击。
一个好的加密系统,密文应对密钥充分敏感,即密钥的任何微小变化将产生截然不同的密文:也要对明文充分敏感,即明文的任何微小变化也将产生截然不同的密文。图8(a)是两个密钥z0相差10-16时所得加密图像的差图;图8(b)是两幅原始图像仅仅第一个像素的灰度值相差0.1时,所得加密图像的差图。差图中非全黑点表示两幅密图对应位置的像素值不同。可见密文对混沌系统初值密钥和明文是非常敏感的。
小知识虚拟成像系统
虚拟成像系统是用一种将三维画面悬浮在柜体实景中的半空中成像系统。虚拟成像系统由柜体、分光镜、射灯、视频播放设备组成,基于分光镜成像原理,通过对产品实拍构建三维模型的特殊处理,然后将拍摄的的产品影像或产品三维模型影像叠加进场景中,构成了动静结合的产品展示系统。