System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数字图像加密,提出一种基于多维混沌系统与dna编码的彩色图像加密方法。
技术介绍
1、图像作为可以直观表达信息的应用在我们的生活中无处不在。随着互联网时代的不断发展,人们的生活越来越离不开网络,数字图像也被用于许多领域,如医学,国防,法律事务,学校档案,商业合作等。因此,图像传输和存储的安全性必然成为人们所关注的热点。如何更好的保护数字图像内容的安全,成为了我们需要解决的问题。
2、由于数字图像的一些固有特征,如数据量大,相邻像素间相关性强以及冗余度高,传统的加密方法如des,aes和rsa,难以解决这些问题。所以一些研究学者提出了基于混沌的图像加密,混沌的特点主要有对初始值和控制参数的敏感性,内在的随机性,有界性,遍历性以及非周期性。密码学对密钥的要求正好是混沌系统所具有的特性,所以将混沌系统应用到图像加密中,会得到非常好的加密效果。1989年,应用数学家matthews最先设计了基于混沌的加密方法,开启了将混沌系统应用到图像加密领域的大门。1998年fridrich在二维混沌系统的基础上总结出一种加密结构——混淆-扩散结构。通过混沌映射生成效果很好的随机序列,与数字图像进行像素间的位置变换与数值变化,得到像素分布均匀的图像,最终实现图像加密。
3、随着密码学,数学和生物学等学科的共同发展,相互渗透,dna密码技术受到了广泛关注。dna编码固有的并行性,低功耗和巨大的存储等优势,越来越多的学者将混沌理论和dna技术相结合应用到图像加密中。dna编码技术是将二进制序列映射到dna碱基的过程,
技术实现思路
1、本专利技术的目的在于提供一种基于多维混沌系统与dna编码的图像加密方法及其解密方法,用来提高数字图像加密的抗穷举攻击能力,抗统计攻击能力和抗明文攻击能力等。本专利技术对密钥进行明文关联,提供更大的密钥空间;多维混沌系统提供更好的不可预测性和随机性;同时,与dna编码技术相结合实现更安全的图像加密。
2、为实现上述目的,本专利技术采用的技术方案为:
3、基于多维混沌系统与dna编码的图像加密方法,其特征在于,包括以下步骤:
4、步骤1、对输入的彩色图像进行图像预处理,得到重构图像i,并将每个通道的像素和的平均值作为三维逻辑映射的初始密钥;每个通道的不同比特面和的平均值作为chen超混沌系统的初始密钥。
5、步骤2、将初始密钥作为初始值,输入三维逻辑映射迭代生成混沌序列xi,yi,zi,其中将序列xi转化为与图像i大小相同的二维随机矩阵;输入chen超混沌系统迭代生成混沌序列xi,yi,zi,hi;根据混沌序列xi对明文图像i进行dna编码,根据混沌序列yi对随机矩阵进行dna编码;已编码明文图像矩阵和已编码随机矩阵执行dna运算,运算规则由zi决定;再对dna矩阵执行dna解码操作得到解码矩阵,解码规则由hi决定;最后完成dna编码的加密,得到扩散后的矩阵q。
6、步骤3、基于混沌序列yi与zi计算得到索引序列;再根据索引序列对扩散后的矩阵q进行行置换与列置换,得到最终密文图像t。
7、进一步的,步骤1中,图像预处理的过程为:针对输入的彩色图像,分别获取r,g,b分量为i1,i2,i3,再将三个矩阵依次横向拼接,得到重构图像i。对图像进行分块,在分块之前要保证矩阵尺寸可以被t整除,所以先填充矩阵使用下列公式:
8、mod(m,t)=0
9、mod(n,t)=0
10、其中mod代表取余,填充的数据为0,t=4为分块的大小,之后重新获取矩阵尺寸为m,n,这样二维矩阵i(m,n)可以被分为(m*n)/t2个图像块。
11、进一步的,步骤1中,生成初始密钥的过程为:
12、首先,可得到所述三维逻辑映射初值x0,y0,z0分别由待加密图像r通道,g通道和b通道的所有像素值的和构成,当图像不同时,所述三维逻辑映射初值也不同:
13、x0=sun(i1(:))+sum(i2(:))/255*m*n
14、y0=sun(i1(:))+sum(i3(:))/255*m*n
15、z0=sun(i2(:))+sum(i3(:))/255*m*n
16、其次,由式可得所述chen超混沌系统初值x0,y0,z0,h0分别由i1的第1,5个比特面,i2的第2,6个比特面,i3的第3,7个比特面以及i1的第4,8个比特面的平均值构成:
17、x0=sum(sum(bitand(i1,17)))/17*m*n)
18、y0=sum(sum(bitand(i2,34)))/34*m*n)
19、z0=sum(sum(bitand(i3,68)))/68*m*n)
20、h0=sum(sum(bitand(i1,136)))/136*m*n)
21、其中,sum代表求和运算,bitand代表获取对应比特面的值,待加密图像选取不同,所述chen超混沌系统初值也将不同。
22、进一步的,步骤2中,chen超混沌系统的数学模型为:
23、x=m(y-x)
24、y=-xz+qx+py
25、z=xy+nz
26、h=yz+rh
27、式中x,y,z,h分别为系统状态变量关于时间的导数,控制参数为m,q,p,n,r;x,y,z,h为系统初始值。当m=35,n=3,p=12,q=7,r=0.58时系统是处于超混沌的。
28、进一步的,步骤2中,三维逻辑映射的数学模型为:
29、xi+1=αxi(1-xi)+βyi2xi+γzi3
30、yi+1=αyi(1-yi)+βzi2yi+γxi3
31、zi+1=αzi(1-zi)+βxi2zi+γyi3
32、其中α,β,γ为参数,当3.68<α<3.99,0<β<0.022,0<γ<0.015时,系统具有混沌特性,取值在[0,1]区间上。
33、进一步的,步骤2中,具体过程为:
34、步骤2.1、输入初始值x0,y0,z0和参数α,β,γ到三维逻辑映射式中进行迭代,生成三个随机序列{xi},{yi},{zi};
35、步骤2.2、将{xi}序列转化为与原始矩阵i大小相同的二维随机矩阵r,并使数值转化到0到255范围之间,其中ro本文档来自技高网...
【技术保护点】
1.基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,包括以下步骤:
2.根据权利要求1所述基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,步骤1中,图像预处理的过程为:针对输入的彩色图像,分别获取R,G,B分量为I1,I2,I3,再将三个矩阵依次横向拼接,得到重构图像I。对图像进行分块,在分块之前要保证矩阵尺寸可以被t整除,所以先填充矩阵使用下列公式。其中Mod代表取余,填充的数据为0,t=4为分块的大小,之后重新获取矩阵尺寸为M,N,这样二维矩阵I(M,N)可以被分为(M*N)/t2个图像块;
3.根据权利要求1所述基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,步骤1中,生成初始密钥的过程为:
4.根据权利要求1所述基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,步骤2中,Chen超混沌系统的数学模型为:
5.根据权利要求1所述基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,步骤2中,三维逻辑映射的数学模型为:
6.根据权利要求1所述基于多维混沌系统与DNA
7.根据权利要求1所述基于多维混沌系统与DNA编码的彩色图像加密方法,其特征在于,步骤3中,具体过程为:
...【技术特征摘要】
1.基于多维混沌系统与dna编码的彩色图像加密方法,其特征在于,包括以下步骤:
2.根据权利要求1所述基于多维混沌系统与dna编码的彩色图像加密方法,其特征在于,步骤1中,图像预处理的过程为:针对输入的彩色图像,分别获取r,g,b分量为i1,i2,i3,再将三个矩阵依次横向拼接,得到重构图像i。对图像进行分块,在分块之前要保证矩阵尺寸可以被t整除,所以先填充矩阵使用下列公式。其中mod代表取余,填充的数据为0,t=4为分块的大小,之后重新获取矩阵尺寸为m,n,这样二维矩阵i(m,n)可以被分为(m*n)/t2个图像块;
3.根据权利要求1所述基于多维混沌系...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。