一种基于计算鬼成像和定制数据容器的信息加密方法与流程

文档序号:18899500发布日期:2019-10-18 21:44阅读:201来源:国知局
一种基于计算鬼成像和定制数据容器的信息加密方法与流程

本发明属于信息加密方法技术领域,涉及一种基于计算鬼成像和定制数据容器的信息加密方法。



背景技术:

随着互联网的快速发展,信息安全问题越来越受到人们的关注。由于成像不需要成像透镜以及光学参数的复杂性的物理优势,计算鬼成像在信息安全领域已经得到了越来越多的研究。吴晶晶等人提出了一种基于计算鬼成像的多图像加密方法,每个原图像通过计算鬼成像被加密成一个强度矢量,叠加所有的强度矢量可以得到密文。江珊等人提出了一种基于计算时间鬼成像的信息安全方法,一组独立的2d随机二值图案与明文信息构成的数据流的加权和作为密文。隋连升等人提出了一种基于计算鬼成像框架下的扩展策略的图像隐藏方法,为了增强对噪声和闭塞攻击的抵抗力,使用了大量的纯相位掩模收集测量的强度值。

自从fredybarrera,john等人第一次提出了数据容器的概念后,一些实验就证明了基于快速响应(qr)编码的光学加密方法的可行性。因为qr码的快速可读性、存储容量大和容错力高的优点,其已经在信息安全领域已经得到了越来越多的研究。为了实现大噪声容忍的目标,zea,alejandrovelez等人在光学加密系统中引入了第一个定制数据容器,此方法在减少实验测量值的情况下提高了加密更多的信息的能力。虽然基于计算鬼成像的光学信息处理方法已经广泛地应用于图像加密、认证和信息隐藏,但在鬼成像的过程中仍然存在重建图像质量低,密钥管理不方便以及由于计算鬼成像内在的线性而导致的安全性低的缺点。



技术实现要素:

本发明的目的是提供一种基于计算鬼成像和定制数据容器的信息加密方法,解决了现有技术中存在的重建图像质量低、密钥管理不方便、安全性低的问题。

本发明所采用的技术方案是,一种基于计算鬼成像和定制数据容器的信息加密方法,具体包括以下步骤:

步骤1、将明文信息编码为定制数据容器f;

步骤2、基于逻辑映射产生随机序列x′和随机序列y′;

步骤3、利用随机序列y′和阈值γ∈(0,1)生成随机数据容器g;

步骤4、将定制数据容器f和随机数据容器g进行异或运算得到数据容器f′;

步骤5、利用随机序列x′对数据容器f′进行置乱,得到置乱数据容器f″;

步骤6、使用迭代相位检索算法从hadamard矩阵中计算得到纯相位掩模

步骤7、采用计算鬼成像方法,利用纯相位掩模对置乱数据容器f″进行加密。

本发明的特点还在于:

步骤1明文信息的字符ascii值∈[32,126]。

步骤2中的随机序列x′和随机序列y′分别为:

x′={x(j)|j=1,2,...,n×n}(3);

y′={x(j)|j=n×n+1,n×n+2,...,2×n×n}(4)。

步骤3为:利用随机序列y′的前256个迭代值生成随机数据容器g。

步骤5包括:

步骤5.1、对随机序列x′进行重新排列,得到序列x″={x(w(j))|j=1,2,...,n×n},其中,w(·)为地址码,表示在序列x′中的第w(j)个迭代值映射到序列x″中的第j个;

步骤5.2、将f′重排为一维序列f,f={f(j)|j=1,2,...,n×n},使用序列x″对f进行处理得到新的序列f′,其中,f中的第w(j)个像素值映射到序列f′中的第j个;

步骤5.3、将序列f′重排为二维矩阵得到置乱定制数据容器f″。

步骤6具体包括:

步骤6.1、假设定制数据容器f分辨率为n×n,掩模和定制数据容器大小相同,把2k阶hadamard矩阵的每一行重新排列成n×n像素的2d图案,2d图案表示为hi(μ,υ),i=1,2,3,...,2k,共2k个;

步骤6.2、使用迭代相位检索算法从2k阶hadamard矩阵的第i行中计算得到一个纯相位掩模共2k个,具体如下:

步骤6.2.1、在第n次迭代时,纯相位掩模传播到输出平面,其复振幅表示为:

其中,frtλ,z{·}表示波长为λ轴向距离为z的菲涅尔变换;

步骤6.2.2、采用支撑约束替换振幅后,上述复振幅在输出平面更新为:

其中,arg(·)用来计算相位分布;

然后,新的波阵面传播回输入平面,该过程表示为:

其中,frtλ,-z{·}表示菲涅尔逆变换;

步骤6.2.3、开始下一次迭代过程之前,通过提取步骤6.2.2结果的相位函数来更新纯相位掩模表示如下:

步骤6.2.1-步骤6.2.3构成一次迭代,当强度值|ei(2)(μ,υ)|2和2d图案hi(μ,υ)的相关系数达到阈值时,迭代停止,把上一次迭代过程由式(10)计算的结果作为纯相位掩模的迭代值。

步骤7具体包括:先将纯相位掩模依依次加载到空间光调制器中,同时将置乱定制数据容器f″放在物体平面,然后利用桶探测器记录测量强度值b,并将测量强度值b作为密文,测量强度值b表示如下:

bi=∫∫dμdυii(μ,υ)t(μ,υ)(12);

其中,ii(μ,υ)=|ei(μ,υ)|2,ei(μ,υ)是纯相位掩模的菲涅尔变换的结果,t(μ,υ)是定制数据容器f″的传输函数。

加载到空间光调制器纯相位掩模依的数量大于等于步骤6得到的纯相位掩模依数量的15%。

其解密过程如下:

步骤a、假设桶探测器收集了k个测量强度值b,通过散斑图案和测量强度值的关联运算恢复置乱定制数据容器f″:

其中,<·>表示整体的平均值;

步骤b、根据随机序列x″对恢复结果f″进行逆置乱,得到数据容器f′;

步骤c、使用随机序列y′和阈值γ∈(0,1)生成随机数据容器g,最后对数据容器f′和随机数据容器g进行异或运算得到定制数据容器f,从定制数据容器f中提取得到明文信息。

本发明的有益效果是:本发明一种基于计算鬼成像和定制数据容器的信息加密方法,能破坏基于计算鬼成像进行图像加密过程的内在线性,从而提高加密方法的安全性;由于纯相位掩模是从hadamard矩阵的每一行中导出的,各个纯相位掩模之间的冗余度较低,因此鬼成像的过程使用较少的纯相位掩模就能得到很好重建效果,只使用15%的纯相位掩模就能无损恢复明文信息;使用逻辑映射的条件作为密钥,其对于微小变化的敏感性扩大了密钥空间,同时方便密钥的管理。

附图说明

图1是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的流程图;

图2是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的原始定制数据容器示意图;

图3是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的携带明文信息的定制数据容器示意图;

图4是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的随机数据容器示意图;

图5是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的异或运算结果示意图;

图6是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的置乱定制数据容器示意图;

图7是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的加密过程示意图;

图8(a)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的100%时的结果示意图;

图8(b)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的80%时的结果示意图;

图8(c)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的40%时的结果示意图;

图8(d)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的20%时的结果示意图;

图8(e)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的15%时的结果示意图;

图8(f)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例1纯相位掩模为总数的10%时的结果示意图;

图9(a)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例2的一种结果示意图;

图9(b)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例2的另一种结果示意图;

图10是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的相关参数与分叉参数的变化的曲线图;

图11(a)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例3的一种结果示意图;

图11(b)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例3的另一种结果示意图;

图12是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的相关参数与初始值的变化的曲线图;

图13(a)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例4的一种结果示意图;

图13(b)是本发明一种基于计算鬼成像和定制数据容器的信息加密方法实施例4的另一种结果示意图;

图14是本发明一种基于计算鬼成像和定制数据容器的信息加密方法的相关参数与整数p的变化的曲线图。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

一种基于计算鬼成像和定制数据容器的信息加密方法,如图1所示,具体包括以下步骤:

步骤1、将明文信息编码为定制数据容器f;

明文信息由可显示的字符构成,其ascii值∈[32,126],通过每个字符的8位二进制ascii值生成128×128像素的定制数据容器f。其中,3×3个像素组成一个方块,每个方块代表一位二进制信息,黑色(9个像素的像素值都为0)表示0,白色(9个像素的像素值都为255)表示1,本实施例使用16×16=256个方块来编码明文信息,如图2所示。把“xut:computationalghostimaging”进行编码得到如图3所示定制数据容器f。

步骤2、基于逻辑映射产生随机序列x′和随机序列y′;

逻辑映射的一维非线性迭代过程可表示为

x(n+1)=p×x(n)×(1-x(n))(1);

其中,x(n)∈(0,1),p∈[3.5699456,4],本实施例中逻辑映射的分叉参数p为3.99995,初始值x(n)为0.45,为了提高随机性,随机序列的前p个迭代值被丢弃,p=2000。由(1)式产生的随机序列可表示为

x={x(j)|j=1,2,...,2×n×n+p}(2);

丢弃序列x的前p个迭代值得到随机序列x′和随机序列y′:

x′={x(j)|j=1,2,...,n×n}(3);

y′={x(j)|j=n×n+1,n×n+2,...,2×n×n}(4)。

步骤3、利用随机序列y′和阈值γ∈(0,1)生成随机数据容器g;

利用随机序列y′的前256个迭代值生成随机数据容器g,如图4所示,若x(n)>γ,则块的颜色为白色,否则为黑色。

步骤4、将定制数据容器f和随机数据容器g进行异或运算得到数据容器f′,如图5所示。

步骤5、利用随机序列x′对数据容器f′进行置乱,得到置乱数据容器f″;

步骤5.1、对随机序列x′进行重新排列,得到序列x″={x(w(j))|j=1,2,...,n×n},其中,w(·)为地址码,表示在序列x′中的第w(j)个迭代值映射到序列x″中的第j个;

步骤5.2、将f′重排为一维序列f,f={f(j)|j=1,2,...,n×n},使用序列x″对f进行处理得到新的序列f′,其中,f中的第w(j)个像素值映射到序列f′中的第j个;

步骤5.3、将序列f′重排为二维矩阵得到置乱定制数据容器f″,如图6所示。

步骤6、使用迭代相位检索算法从hadamard矩阵中计算得到纯相位掩模;

步骤6.1、假设定制数据容器f分辨率为n×n,掩模和定制数据容器大小相同,使用迭代相位检索算法从2k(满足n×n=2k)阶hadamard矩阵的第i行中计算得到一个纯相位掩模共2k个;

2阶hadamard矩阵可表示为

根据2阶hadamard矩阵,使用递归方法得到2k阶hadamard矩阵,可表示为

将2k阶hadamard矩阵的每一行重新排列成n×n像素的2d图案,2d图案表示为hi(μ,υ),i=1,2,3,...,2k,共2k个,其中2d图案中的-1值应该替换为0;

步骤6.2、利用迭代相位检索算法从hi(μ,υ)计算纯相位掩模具体如下:

步骤6.2.1、给定初始纯相位掩模在第n次迭代时,纯相位掩模传播到输出平面,其复振幅表示为:

其中,frtλ,z{·}表示波长为λ轴向距离为z的菲涅尔变换;

步骤6.2.2、采用支撑约束替换振幅后,上述复振幅在输出平面更新为:

其中,arg(·)用来计算相位分布;

然后,新的波阵面传播回输入平面,该过程表示为:

其中,frtλ,-z{·}表示菲涅尔逆变换;

步骤6.2.3、开始下一次迭代过程之前,通过提取步骤6.2.2结果的相位函数来更新纯相位掩模表示如下:

步骤6.2.1-步骤6.2.3构成一次迭代,当强度值|ei(2)(μ,υ)|2和2d图案hi(μ,υ)的相关系数达到阈值时,迭代停止,阈值通常接近于1;将上一次迭代过程由式(10)计算的结果作为纯相位掩模的迭代值;

相关系数(cc)根据下式计算:

步骤7、采用计算鬼成像方法,利用纯相位掩模对置乱数据容器f″进行加密;

其实验装置如图7所示,将纯相位掩模依次加载到空间光调制器中,加载到空间光调制器中的纯相位掩模的数量可以小于步骤6得到的纯相位掩模总数,同时将置乱定制数据容器f″放在物体平面,然后利用桶探测器记录测量强度值b,并将得到的测量强度值b作为密文,纯相位掩模对应测量强度值bi,测量强度值b表示如下:

bi=∫∫dμdυii(μ,υ)t(μ,υ)(12);

其中,ii(μ,υ)=|ei(μ,υ)|2,ei(μ,υ)是纯相位掩模的菲涅尔变换的结果,本实施例中菲涅尔变换的波阵面波长为632.8nm,轴向距离为50mm,t(μ,υ)是定制数据容器f″的传输函数。

本发明加密方法的解密过程如下:

步骤a、假设桶探测器收集了k个测量强度值b,通过散斑图案和测量强度值的关联运算恢复置乱定制数据容器f″:

其中,<·>表示整体的平均值;

步骤b、根据随机序列x″对恢复结果f″进行逆置乱,得到数据容器f′;

步骤c、使用随机序列y′和阈值γ∈(0,1)生成随机数据容器g,最后对数据容器f′和随机数据容器g进行异或运算得到定制数据容器f,从定制数据容器f中提取得到明文信息。

若只有部分纯相位掩模用于加密过程时,解密结果的定制数据容器的块的颜色不是纯白或纯黑的,因此可以通过计算9个像素的平均像素值来估计块所表示的二进制信息,根据设置好的阈值th∈[0,255],若平均像素值大于th,则代表二进制的“1”,否则代表二进制的“0”。实施例1,当纯相位掩模总数的100%,80%,40%,20%,15%和10%用于收集测量强度值b时,重建的异或编码结果如图8(a)-(f)所示。当阈值th=110时,通过使用上述解密恢复方法,实验发现从图8(a)-(e)中可以恢复完整的明文信息,但无论阈值th怎样变化,都不能从图8(f)中恢复完整的明文信息。当阈值th分别取110,90,70,50和30时,从图8(f)中恢复的明文信息如表1所示。“?”表示字符的十进制ascii码值不在[32,126]范围内,其为格式控制字符。

表1使用不同阈值时恢复的明文信息

所以,本实施例在加密过程中使用了15%的掩模数量来进行密钥安全性测试:

(1)使用错误的分叉参数p

实施例2,当逻辑映射的分叉参数改变±1×10-15时,重建的异或编码结果如图9(a)-(b)所示,从图9(a)-(b)恢复的明文信息如表2所示。相关系数和分叉参数的变化的曲线图如图10所示。

表2使用错误的分叉参数时恢复的明文信息

从表2可以看出随着阈值的改变,几乎看不到任何有效信息。从图9可以看出,当分叉参数有微小变化时,相关系数迅速减小到接近0。

(2)使用错误的初始值x(0)

实施例3,当逻辑映射的初始值改变±1×10-16时,重建的异或编码结果如图11(a)-(b)所示,从图11(a)-(b)恢复的明文信息如表3所示。相关系数和初始值的变化的曲线图如图12所示。

表3使用错误的初始值时恢复的明文信息

从表3可以看出随着阈值的改变,几乎看不到任何有效信息。从图10可以看出,当初始值有微小变化时,相关系数迅速减小到接近0。

(3)使用错误的整数p

实施例4,当整数p改变±1时,重建的异或编码结果如图13(a)-(b)所示,从图13(a)-(b)恢复的明文信息如表4所示。相关系数和整数p的变化的曲线图如图14所示。

表4使用错误的整数p时恢复的明文信息

从表4可以看出随着阈值的改变,几乎看不到任何有效信息。从图14可以看出,当初始值有微小变化时,相关系数迅速减小到接近0。

根据图10、图12和图14可以看出密钥对于微小变化极其敏感,扩大了密钥空间。

通过以上方式,本发明的加密方法,能破坏基于计算鬼成像进行图像加密过程的内在线性,从而提高加密方法的安全性;由于纯相位掩模是从hadamard矩阵的每一行中导出的,各个纯相位掩模之间的冗余度较低,因此鬼成像的过程使用较少的纯相位掩模就能得到很好重建效果,只使用15%的纯相位掩模就能无损恢复明文信息;使用逻辑映射的条件作为密钥,其对于微小变化的敏感性扩大了密钥空间,同时方便密钥的管理。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1