一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于二维离散忆阻超混沌映射的遥感图像加密方法

2022-11-09 21:38:15 来源:中国专利 TAG:


1.本发明涉及一种图像加密方法,特别涉及一种基于二维离散忆阻超混沌映射的遥感图像加密方法。


背景技术:

2.遥感技术在军事侦察、资源调查、环境监测和全球研究等领域发挥着至关重要的作用。遥感图像包含大量的遥感探测目标信息,是卫星获取遥感信息的主要手段,具有数据量大、多目标、保密性强等特点。因此引发国内外研究者对安全传输遥感图像的高度重视。研究者提出了许多图像加密方法,这些算法有的运算简单但是其复杂性不高,容易被破译,有的具有高复杂性,但是计算效率低,难以令人满意。
3.生活中常见的为彩色图像,其具有冗余度高、数据量大、维度多以及相关性强等特点,而这些特点会导致传统密码学加密地效率低下且加密效果不理想,安全性能较弱。为提高算法的加密效率和安全性能,利用混沌系统耦合忆阻器建立忆阻超混沌模型,设计一种基于二维离散忆阻超混沌映射的遥感图像加密方法很有必要,可以安全高效保护图像数据在网络上的传输。


技术实现要素:

4.本发明要解决的技术问题是,为了提高遥感图像加密算法的加密效率和安全性能,提出了一种基于二维离散忆阻超混沌映射的遥感图像加密方法。
5.实现本发明的技术方案如下,一种基于二维离散忆阻超混沌映射的遥感图像加密方法,步骤如下:
6.步骤1:混沌序列生成:令原始图像(或称明文图像)p的大小为m
×
n,通过对密钥空间为2
256
的二进制外部密钥k进行处理,其处理方式为:
[0007][0008]
其中,λ1、λ2、λ3、λ4、λ5为解压密钥得到的五个系统初始值参数,ki为密钥k中第i位的值。然后,对参数进一步处理得到二维离散忆阻超混沌(2d-lmhm)的初始值x1和y1以及算
法控制参数α,其处理方式可以表示为:
[0009][0010]
从而得到二维离散忆阻超混沌(2d-lmhm)系统的初始值x1和y1以及算法控制参数α,并按以下公式迭代m
×
n次,获得两个混沌序列x={xi}m×n和y={yi}m×n;
[0011][0012]
其中,xi和yi是第i次迭代的结果,x
i 1
和y
i 1
是第i 1次迭代的结果,u是改进的logistic映射的控制参数,k是改进logistic映射与忆阻器之间的耦合强度;a、b为忆阻器参数;qi为第i次迭代时的电荷量。
[0013]
本发明令k=1.77,u=-0.1,a=-1,b=0.1,且将初始值x1和y1的取值范围限定在区间[0.5,1]中。将得到的混沌序列x和y转换成大小为m
×
n的混沌矩阵s1和s2。
[0014]
步骤2:主对角线行列扩散:利用混沌矩阵s1,对p按照主对角线方向(从左上到右下)进行行列扩散操作,得到扩散图像矩阵c1。
[0015]
其具体扩散方法为:
[0016]
(1)用明文图像p的第m行第1列的元素和第1行第n列的元素对第1行第1列的元素进行扩散处理。
[0017]
(2)用明文图像p中的第m行元素以及第1行第1列的元素向右将第1行元素进行迭代扩散。
[0018]
(3)用明文图像p中的第n列元素以及第1行第1列的元素向下将第1列元素进行迭代扩散。
[0019]
(4)利用扩散后的第1行和第1列中的元素按照主对角线方向进行行列扩散,得到扩散后的图像矩阵c1。
[0020]
详细过程可表示为:
[0021][0022]
其中,p表示明文图像,为扩散前的图像矩阵;c1表示扩散后的图像矩阵;p
(m,j)
为明文图像p第m行第j列的像素值;p
(i,n)
为明文图像第i行第n列的像素值;p
(i,j)
为明文图像第i行第j列的像素值;s
1(i,j)
为混沌矩阵s1第i行第j列的元素;c
1(i,j)
为扩散后的图像矩阵第i行第j列的像素值;表达式中floor表示向下取整,mod表示取余。
[0023]
步骤3:像素位置置乱:提取混沌矩阵s1中的t列为矩阵s
t
,其中,t为外部密钥k处理得到的值,其计算方式如下:
[0024]
t=floor(mod(∑s(:,floor(mod(α,m) 1))
×
α),m) 1
[0025]
其中,s为混沌矩阵;m为图像的行数;α为算法控制参数。
[0026]
具体的像素位置置乱的方法描述如下:对混沌矩阵s1与矩阵s
t
按列进行升序排序,
得到索引矩阵u与v,利用索引矩阵u与对应列进行组合,进一步处理构建得到一个位置矩阵o1。
[0027]
位置矩阵o1可以表示为:[(u
(1,1)
,1),(u
(1,2)
,2),...,(u
(i,j)
,j)],其中,u
(i,j)
为索引矩阵u第i行第j列的元素;
[0028]
再对位置矩阵o1中的像素值进一步按行升序排序得到索引矩阵h,将索引矩阵h与索引矩阵v进一步处理,构建得到一个位置矩阵o2,
[0029]
位置矩阵o2可以表示为:[(v1,h
(1,1)
),(v1,h
(1,2)
),...,(vi,h
(i,j)
)],其中,vi为索引矩阵v第i个元素;h
(i,j)
为索引矩阵h第i行第j列元素;
[0030]
对扩散图像矩阵c1按照位置矩阵o1与位置矩阵o2对应位置的像素,按行按列进行交换,得到置乱图像矩阵c2。
[0031]
步骤4:副对角线行列扩散:利用混沌矩阵s2,对置乱图像矩阵c2按照副对角线方向(从右上到左下)进行行列扩散操作,得到扩散图像矩阵c3,即最终加密图像。
[0032]
副对角线行列具体的扩散方法为:
[0033]
(1)用置乱图像矩阵c2的第m行第1列的元素和第1行第1列的元素对第1行第n列的元素进行扩散处理。
[0034]
(2)用置乱图像矩阵c2中的第m行元素以及第1行第n列的元素向左将第1行元素进行迭代扩散。
[0035]
(3)用置乱图像矩阵c2中的第1列元素以及第1行第n列的元素向下将第n列元素进行迭代扩散。
[0036]
(4)利用扩散后的第1行和第n列中的元素按照副对角线方向进行行列扩散,得到扩散后的图像矩阵c3;其过程可表示为:
[0037][0038]
其中,c2表示置乱图像矩阵,c3表示扩散后的图像矩阵;c
2(m,n)
为置乱后的图像c2第m行第n列的像素值;s
2(i,j)
为混沌矩阵s2第i行第j列的元素值;c
3(i,j)
为扩散后的图像矩阵c3第i行第j列的像素值。
[0039]
在解密过程中,可以利用相同密钥k得到相同的混沌序列,然后再用相同的混沌矩阵对加密图像c3进行解密,即可得到原始图像(或称明文图像)p;即解密过程是加密过程的逆过程。
[0040]
本发明的工作原理为,由改进的logistic映射和离散忆阻器耦合而成二维离散忆阻超混沌映射2d-lmhm,该映射具有较宽的混沌区间和较大的超混沌范围,非常适用于图像加密。在此基础上,本发明提出了一种适用于遥感图像加密的算法rs-iea,该算法采用了扩散-置乱-扩散结构,利用得到的混沌矩阵对明文图像按照主对角线行列扩散、像素位置置乱以及副对角线行列扩散进行操作,得到密文图像。
[0041]
本发明的有益效果在于,本发明构建了一个二维离散忆阻超混沌映射,提高了超混沌映射的复杂度以及初值敏感性,有效扩大了密钥空间,极大提高了图像加密的安全性
能以及加密效率。基于此,提出了一种基于二维离散忆阻超混沌的图像加密方法,该方法采用了主对角线扩散-像素位置置乱-副对角线扩散的结构,该加密方法极大提高了算法的加密效率,并且增强了抵抗差分攻击能力,也能够很好的抵抗暴力攻击。因此,本发明提出的图像加密方法具有安全高效的特点,可以有效保证图像在传输过程的安全性。
[0042]
实验结果表明:本发明能够抵抗差分攻击以及暴力攻击,攻击者很难从密文图像中获得有效信息,不仅具有快速高效的加密能力,而且具有较高的安全性能,能够成功保证遥感图像在网络中的安全传输。
附图说明
[0043]
图1是本发明的加密流程图;
[0044]
图2是本发明构建4
×
4实际位置索引矩阵示意图;
[0045]
图3是本发明对4
×
4实际图像矩阵进行置乱的示意图;
[0046]
图4是本发明的明文图像及其对应的密文图像,
[0047]
图4(a)是512
×
512遥感图像,
[0048]
图4(b)是明文图像的直方图,
[0049]
图4(c)是密文图像,
[0050]
图4(d)是密文图像的直方图,
[0051]
图4(e)是密文图像的解密图像;
[0052]
图5是本发明的加密以及解密过程的密钥敏感性,
[0053]
图5(a)是加密过程的密钥敏感性,
[0054]
图5(b)是解密过程的密钥敏感性;
[0055]
图6是本发明的明文图像以及其对应密文图像的相邻像素相关性,
[0056]
图6(a)是明文图像相关性,
[0057]
图6(b)是密文图像相关性;
[0058]
图7是本发明经过噪声攻击后的密文图像和解密图像;
[0059]
图8是本发明经过裁剪后的密文图像和解密图像。
具体实施方式
[0060]
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整地描述。
[0061]
如图1所示,本实施例一种基于二维忆阻超混沌映射的遥感图像加密方法,包括:第一,主对角线行列扩散:通过外部密钥k处理作为初始状态,使二维忆阻超混沌2d-lmhm产生的混沌序列对明文图像按主对角线方向从左上到右下进行行列扩散;第二,像素位置置乱:利用混沌序列生成的索引矩阵得到位置矩阵,再通过位置矩阵得到索引矩阵实现图像像素位置置乱;最后通过2d-lmhm映射产生的混沌序列对置乱图像按副对角线方向从右上到左下进行行列扩散。
[0062]
具体步骤如下:
[0063]
步骤1:混沌序列生成:令原始图像p的大小为m
×
n,通过对密钥空间为2
256
的二进制外部密钥k进行处理,其处理方式为:
[0064][0065]
其中,λ1、λ2、λ3、λ4、λ5为由解压密钥得到的五个系统初始值参数;ki为密钥k中第i位的值。
[0066]
然后对参数进一步处理,得到2d-lmhm的初始值x1和y1以及算法控制参数α,其处理方式可以表示为:
[0067][0068]
从而得到二维离散忆阻超混沌系统2d-lmhm的初始值x1和y1以及算法控制参数α,并按如下公式迭代m
×
n次,获得两个混沌序列x={xi}m×n和y={yi}m×n;
[0069][0070]
其中,xi和yi是第i次迭代的结果,x
i 1
和y
i 1
是第i 1次迭代的结果,u是改进的logistic映射的控制参数,k是改进logistic映射与忆阻器之间的耦合强度;a、b为忆阻器参数;qi为第i次迭代时的电荷量。
[0071]
本实施例令k=1.77,u=-0.1,a=-1,b=0.1,且将初始值x1和y1的取值范围限定在区间[0.5,1]中。
[0072]
将得到的混沌序列x和y转换成大小为m
×
n的混沌矩阵s1和s2。
[0073]
步骤2:主对角线行列扩散:利用混沌矩阵s1,对明文图像p按照主对角线方向(从左上到右下)进行行列扩散操作,得到扩散图像矩阵c1。
[0074]
其具体扩散方法为:
[0075]
(1)用明文图像p的第m行第1列的元素和第1行第n列的元素对第1行第1列的元素进行扩散处理。
[0076]
(2)用明文图像p中的第m行元素以及第1行第1列的元素向右将第1行元素进行迭代扩散。
[0077]
(3)用明文图像p中的第n列元素以及第1行第1列的元素向下将第1列元素进行迭代扩散。
[0078]
(4)利用扩散后的第1行和第1列中的元素按照主对角线方向进行行列扩散,得到
扩散后的图像矩阵c1。
[0079]
详细过程可表示为:
[0080][0081]
其中,p表示扩散前的图像矩阵,c1表示扩散后的图像矩阵;p
(m,j)
为明文图像p第m行第j列的像素值;p
(i,n)
为明文图像第i行第n列的像素值;p
(i,j)
为明文图像第i行第j列的像素值;s
1(i,j)
为混沌矩阵s1第i行第j列的元素;c
1(i,j)
为扩散后的图像矩阵第i行第j列的像素值。
[0082]
步骤3:像素位置置乱:提取混沌矩阵s1中的t列为矩阵s
t
,其中,t为外部密钥k处理得到的值,其计算方式如下:
[0083]
t=floor(mod(∑s(:,floor(mod(α,m) 1))
×
α),m) 1
[0084]
其中,s为混沌矩阵;m为图像的行数;α为算法控制参数。
[0085]
像素位置置乱的具体方法描述如下:对混沌矩阵s1与矩阵s
t
按列进行升序排序得到索引矩阵u与v,利用索引矩阵u与对应列进行组合,进一步处理构建得到一个位置矩阵o1:
[0086]
位置矩阵o1可以表示为:[(u
(1,1)
,1),(u
(1,2)
,2),...,(u
(i,j)
,j)],其中,u
(i,j)
为索引矩阵u第i行第j列的元素;
[0087]
再对位置矩阵o1中的像素值进一步按行升序排序,得到索引矩阵h,将索引矩阵h与索引矩阵v进一步处理构建得到一个位置矩阵o2:
[0088]
位置矩阵o2可以表示为:[(v1,h
(1,1)
),(v1,h
(1,2)
),...,(vi,h
(i,j)
)],其中,vi为索引矩阵v第i个元素;h
(i,j)
为索引矩阵h第i行第j列元素;
[0089]
对扩散图像矩阵c1按照位置矩阵o1与位置矩阵o2对应位置的像素按行按列进行交换,得到置乱图像矩阵c2。
[0090]
结合图2,主对角扩散后的图像矩阵中的c
1(4,1)
的像素与c
1(3,4)
的像素交换,c
1(3,2)
的像素与c
1(3,1)
的像素交换,

,c
1(2,4)
的像素与c
1(2,3)
的像素交换,最后得到置乱后的图像矩阵c2。
[0091]
完全置乱后的示例如图3所示。
[0092]
步骤4:副对角线行列扩散:利用混沌矩阵s2,对置乱图像矩阵c2按照副对角线方向(从右上到左下)进行行列扩散操作,得到扩散图像矩阵c3,即最终加密图像。
[0093]
具体的扩散方法如下:
[0094]
(1)用置乱图像矩阵c2的第m行第1列的元素和第1行第1列的元素对第1行第n列的元素进行扩散处理;
[0095]
(2)用置乱图像矩阵c2中的第m行元素以及第1行第n列的元素向左将第1行元素进行迭代扩散;
[0096]
(3)用置乱图像矩阵c2中的第1列元素以及第1行第n列的元素向下将第n列元素进行迭代扩散;
[0097]
(4)利用扩散后的第1行和第n列中的元素按照副对角线方向进行行列扩散,得到扩散后的图像矩阵c3,即密文图像。
[0098]
扩散后的图像矩阵c3详细过程可表示为:
[0099][0100]
其中,c2表示置乱图像矩阵;c3表示扩散后的图像矩阵;c
2(m,n)
为置乱后的图像c2第m行第n列的像素值;s
2(i,j)
为混沌矩阵s2第i行第j列的元素值;c
3(i,j)
为扩散后的图像矩阵c3第i行第j列的像素值。
[0101]
为验证本实施例的可行性,使用配置环境为windows10,8gbram,intel(r)core(tm)i7-6700hq cpu@2.60ghz的计算机在matlab 2018b软件上进行实验仿真。
[0102]
利用本实施例对图4(a)所示大小为512
×
512的彩色遥感图像进行仿真实验,直方图表示图像全部像素的分布情况,图4(b)所示为明文图像的直方图,加密结果如图4(c)所示,图4(d)所示为密文图像的直方图,解密结果如图4(e)所示。由实验结果可知,密文图像能够完全隐藏明文图像包含的有效信息,加密后图像的直方图类似于噪声分布,接近理想的均匀分布,无法从密文图像中获取任何与明文图像相关的有效数据,说明该图像加密算法效果良好。
[0103]
本实施例接下来利用密钥空间、密钥敏感性、抗差分攻击、相邻像素相关性、信息熵以及鲁棒性等,从算法安全性能进行综合分析。
[0104]
1、密钥空间
[0105]
密钥空间是衡量密码系统安全性的一个重要指标。密钥空间越大,则抵抗穷举法的能力就越强,能够有效抵抗暴力破解,加密系统的安全性能就越高。若密钥空间选取的太大,则加密图像的速度则会变小,导致图像加密效率变低。因此,在确保密钥空间安全的前提下,应该尽可能提高加密图像的速度。本实施例选用二进制密钥k的密钥空间的大小为256bit。
[0106]
2、密钥敏感性
[0107]
以遥感图像为例,为测试本实施例的密钥敏感性,每次仅对一位密钥进行微小改动,在其他密钥不变的情况下测试。测试使用两个仅差一位的密钥k1和k2。
[0108]
本实施例加密时的密钥敏感性如图5(a)所示,对遥感图像用密钥k1和k2进行加密,得到加密图像e1和e2,对加密图像e1和e2中像素值作差比较,可以发现加密图像e1和e2是完全不同的。
[0109]
本实施例解密时的密钥敏感性如图5(b)所示,对遥感图像用密钥k1加密后得到加密图像e1,然后对加密图像用密钥k2和k3进行解密得到d2和d3,可以发现使用密钥k2和k3是无法将使用密钥k1加密后的图像进行正确解密,并对解密图像d2和d3中像素值作差比较,可以发现不同解密图像d2和d3是完全不同的。因此,实验结果表明当对密钥做微小改动后无论加密过程还是解密过程均无法得出相同的密文图像或解密图像,本实施例具有很强的密钥敏感性。
[0110]
3、抗差分攻击
[0111]
衡量密文图像的差别的指标常用npcr来比较两幅图像相应位置的像素点的值,记录不同的像素点个数占全部像素点的比例;用uaci来比较两幅图像相应位置的像素点的值,通过记录它们的差值来计算全部相应位置像素点的差值与最大差值的比值的平均值。npcr和uaci的计算公式如下:
[0112][0113]
其中,p1和p2分别表示两个需要比较的图像,sign()为符号函数。对于两幅随机图像,其理想的npcr的值为99.6094%,理想的uaci的值为33.4635%。
[0114]
本实施例的抗差分攻击的具体测试结果如下表所示:
[0115][0116][0117]
根据上述实验结果可知,对不同图像的npcr和uaci测试结果均十分接近于理想值,说明本发明具有极强的抵抗差分攻击的能力。
[0118]
4、相邻像素相关性
[0119]
相邻像素的相关性可以说明图像像素的扩散程度。相关系数越接近于0,则说明相关性越低,也说明相邻像素之间能获取的有效信息就越少;相关系数越接近于1,则说明相关性越强,明文图像相邻像素之间的相关性通常都很高。像素间的相关性可以表示为:
[0120][0121]
其中,x和y表示两个相邻像素的值,x和y表示x和y的均值。分析本实施例对lena、baboon、pepper、boat、plane五张图像在加密前以及加密后在水平方向、垂直方向以及对角线方向上的相关系数。图6(a)表示五张图片在加密前分别在这三个方向上相关性;图6(b)表示该五张图片在加密后分别在这三个方向上相关性图。
[0122]
本实施例对五张图像的明文图像和密文图像的各个方向上的相关系数如下表所
示:
[0123][0124][0125]
根据上述结果可知,密文图像的相关系数均十分接近于0,说明本发明加密后的密文图像中相邻像素之间的信息被隐藏得很好。
[0126]
5、信息熵
[0127]
信息熵表示为图像信息的不确定性的程度。信息熵越大,像素分布越均匀,安全性能就越高;信息熵越低,像素分布就越集中,能获取的信息就越多。信息熵的公式定义如下:
[0128][0129]
其中,n表示的是该图像的像素位深度,256灰度级的像素位深度为8,p(xi)是灰度值xi出现的概率。对于256的图像而言,信息熵的理论值是8。这意味着结果越接近8,信息泄露的可能性就越小,说明提出的加密方案的安全性就越高。分析本发明对lena、baboon、pepper、boat、plane五张图像在加密前以及加密后分别在r通道、g通道以及b通道上的信息熵。信息熵计算结果如下表所示:
[0130]
[0131]
根据上述表格可知,密文图像的信息熵十分接近于8,说明本发明加密后的图像信息的不确定性程度十分大,安全性能十分高。
[0132]
6、鲁棒性
[0133]
在网络传输的过程中,图像不可避免会遭受噪声攻击以及出现数据丢失等问题。因此,图像加密算法应该对噪声攻击以及数据丢失由一定的免疫能力。以遥感图像为例,首先,分别使用0.001的高斯噪声、0.01的椒盐噪声、泊松噪声以及0.01的乘性噪声对其密文图像进行干扰,并对被干扰后的密文图像进行解密,解密图像如图7所示。
[0134]
当密文图像遭受噪声攻击后,本实施例仍能恢复出大部分有效的明文图像信息,因此本发明能够有效抵御噪声攻击。其次,分别对其密文图像进行1/16以及1/8裁剪,然后对被裁剪的密文进行解密;裁剪后的密文图像以及解密图像如图8所示,本实施例仍能恢复出大部分有效的明文图像信息,因此本发明能够有效抵御数据丢失。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献