一种基于混沌与明文相关联的新型图像加密方法

文档序号:9751632阅读:571来源:国知局
一种基于混沌与明文相关联的新型图像加密方法
【技术领域】
[0001] 本发明涉及图像加密领域,更具体地,涉及一种基于混沌与明文相关联的新型图 像加密方法。
【背景技术】
[0002] 随着计算机网络的发展和普及,数字信息的交流(如:视频、音频和图像等)越来越 普遍。其中,图像作为人们对自然界理解最直接的方式之一,已经广泛深入到日常生活之 中。然而,在开放性的网络环境中,非授权的第三方很容易对这些图像信息进行拦截、读取 或传播。为了保护图像的安全性,特别是私人图像、军事图像甚至是涉及国家机密的图像, 人们提出了对图像进行加密隐藏。与传统文本不一样,图像具有数据大、冗余度高和相关性 强等特点,这使得传统的加密算法(如:AES、DES和IDEA等)不能有效地对图像进行加密。因 此,如何更好地对图像信息进行保护已经成为当今信息安全领域的一大严峻问题。
[0003] 由于混沌系统(映射)具有非周期性、遍历性、伪随机性和对初值条件的敏感性等 特点,非常适合于密码学中的混淆(confusion)和扩散(diffusion)密码系统。因此,基于混 沌系统(映射)的图像加密算法已经变成了现代密码学的重要课题之一。自从1998年 Fridrich提出了 一种基于混沌的图像加密对称算法,并设计了的经典置乱-扩散 (permutation-diffusion)加密机制,专家和学者们在此基础上提出了许多新的基于混纯 的图像加密方法。我们知道一维的混沌系统(映射)简单易操作而被广泛应用于图像加密 中。但是,其初值条件和控制参数较少,故不能够有效地防止暴力攻击。基于二维或二维以 上的混沌系统(映射)的算法设计可以大大提高密钥空间,使得算法的安全性得到较大地提 高。然而,目前还有许多问题没有得到有效地解决:第一,在置乱加密时,加密算法只考虑图 像的像素位置的置乱,即是说,明文图像在置乱前后其统计特征特别是直方图保持不变;第 二,明文图像特征"像素和"在扩散前没有变化,容易造成差分攻击;第三,图像在加密过程 中所使用密钥流与明文图像无关,这导致了对不同图像进行加密时,所用的密钥流保持一 致不变;第四,秘密密钥在加密过程中仅仅用于生成密钥流,没有直接参与密文图像的获 取。

【发明内容】

[0004] 本发明为克服上述现有技术所述的至少一种缺陷,提供一种基于混沌与明文相关 联的新型图像加密方法。
[0005] 为解决上述技术问题,本发明的技术方案如下:
[0006] -种基于混沌与明文相关联的新型图像加密方法,所述方法包括以下步骤:
[0007] S1:对明文图像A进行行列更新处理,得到预处理后的图像E,实现明文图像A的第 一层加密;
[0008] S2:将图像E的像素和s作为图像特征提取出来,并参与密钥流的生成,通过经典的 置乱加密进行第二层加密得到图像Q;
[0009] S3:通过图像的灰度值扩散运算,建立起相邻两像素间的互相影响,并设计秘密密 钥直接参与密文图像的输出。
[0010] 在一种优选的方案中,步骤S1中,具体包括以下步骤:
[0011 ] SI. 1:设明文图像A的大小为mXη像素,对图像A进行行更新预处理,从第二行开始 到最后一行,按公式(1)对图像A的行进行模256的运算得到图像D;
[0012]
(1)
[0013]其中,符号+表示模256运算,&表示明文图像A的行,D,表示行更新预处理后的行; [0014] S1.2:从第二列开始到最后一列,按公式(2)对图像D的列进行模256的运算,得到 预处理后的图像E;
[0015]
(2)
[0016]其中,仏表示图像D的列,&表示列更新预处理后的列。
[0017]在一种优选的方案中,步骤S2中,具体包括以下步骤:
[0018] S2.1:计算图像E的像素总和,记为s,即:s = ΣE( i,j),在生成混沌序列前,不直接 用第一组密钥XQ,yQ来迭代混沌映射,而是用图像特征s按公式(3)对第一组密钥XQ,yo进行 更新:
[0019]
(3) . v......./ _
[0020] 将所得的新密钥XQ,yQ代入混沌映射(4)中进行迭代:
[0021]
(4)
[0022] 其中a和b为混沌映射的控制参数,去掉前d个迭代值以消除瞬态效应,d为预设的 消除瞬态效应控制参数,选择出两个长度为m+n的混沌序列H= {In,h2,…,hm+n}和!^ = {1 i, 12,···,1Β+η};这里,序列Η用于反对角线方向的像素的位置置乱得到图像P,序列L用于主对 角线方向的像素的位置置乱得到图像Q;优点在于实现了对角方向和反对角方向不长度不 一的图像向量的像素置乱加密。
[0023] S2.2:对图像E的反对角方向的像素位置进行置乱,具体为:假定图像的左上角到 右下角依次为第一次至最后一条反对角线,从第二条反对角线开始到第m+n-2条对角线用 序列Η中的相应1π(? = 2,3,…,m+n-2)对图像E进行反对角方向的像素位置的置乱得到置乱 后的图像P,见公式(5):
[0024]
[0025] 这里,符号〈h〉表示对h进行四舍五入取整数上及(1 = 1,2,分别表示图 像P和E的第i条反对角线(包含反次对角线),函数peHEhlu)表示在的对角线向上循环 位移hi个单位;
[0026] S2.3:同理,对图像P的对角方向的像素位置进行置乱,假定图像的右上角到左下 角依次为第一次到最后一条对角线,用序列L中相应的^1 = 2,3,-^+11-2)对图像P进行 像素位置的对角方向置乱得到图像Q,见公式(6):
[0027]
(6)
[0028]从而完成了第二层加密。
[0029]在一种优选的方案中,步骤S3中,具体包括以下步骤:
[0030] S3.1:将图像Q的像素按从上到下从左到右的方式重新排列为一个图像向量q = {qi,q2,···,qmn};
[0031] S3.2:用第二组密钥1〇,瓦,即秘密密钥,对混沌映射(4)进行迭代,丢弃前d个迭代 值以消除瞬态效应,得到一组长度为mn的混沌序列{匕,1?,一,1^},记为1(;
[0032] S3.3:对K按公式(7)的变换使其元素落入[0,255]之间:
[0033] K =〈KX1014〉mod 256 (7)
[0034] S3.4:按公式(8)对图像向量q= {qi,q2,···,qmn}进行扩散加密,得到密文图像向量 C- { Cl,C2,· ··,Cmn}:
[0035] c; - c; | + kj + qj + r, /-1.2,···, mn (8)
[0036] 其中,c0e[0,255]是一个常数参!
[0037] S3.5:将向量c重新排列成一个大小为mX η的密文图像C。本发明与传统方法不同, 设计了第二组密钥信息参与密文图像的获取。
[0038] 在一种优选的方案中,所述方法还包括:对明文图像A按照步骤S1-S3的顺序进行 多轮加密。
[0039] 与现有技术相比,本发明技术方案的有益效果是:本发明提供一种基于混沌与明 文相关联的新型图像加密方法。对明文图像A进行行列更新处理,得到预处理后的图像E;利 用了灰度级256的模运算,通过行与行之间的模运算以及列与列之间的模运算,改变了图像 的像素和,打破原来明文图像的相邻行和相邻列的强相关性。将图像E的像素和s作为图像 特征提取出来,并参与密钥流的生成,通过置乱加密进行第二层加密得到图像Q;改变了传 统算法对不同图像进行加密时所采用的相同密钥流的问题。通过图像的灰度值扩散运算, 建立起相邻两像素间的互相影响,第二组密钥直接参与密文图像的输出。为了达到雪崩效 应,通过密钥流建立起相邻两像素间的互相影响,同时将第二组密钥设计参与密文图像的 输出,实现了第三层加密。
【附图说明】
[0040] 图1为本发明的图像加密框架图。
[0041] 图2为本发明的图像解密框架图。
[0042] 图3为反对角方向的像素位置置乱示意图。
[0043]图4为图像像素值扩散示意图。
[0044] 图5为原始Lena图像。
[0045] 图6为Lena图像的加密图像。
[0046] 图7为Lena图像的加密后的解密图像。
[0047]图8为原始Lena图像的直方图。
[0048]图9为Lena图像加密后的直方图。
[0049] 图10为原始黑图像。
[0050] 图11为黑图像的加密图。
[00511图12为黑图像加密后的直方图。
【具体实施方式】
[0052]附图仅用于示例性说明,不能理解为对本专利的限制;
[0053]下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0054] 实施例1
[0055] 图1是本发明的图像加密框架图,输入:大小为m X η的明文图像A(不妨假设m < η), 两组密钥xo,7〇和%,冗,混沌映射的控制参数a = 1,b = 2,消除瞬态效应控制参数d = 61,参 数co= 143。当然,根据对称性特点,图2是本发明的图像解密框架图。
[0056] 对图像A进行行更新预处理,从第二行开始到最后一行,按公式(1)对图像A的行进 行模256的运算得到图像D;
[0057]
(i)
[0058] 其中,符号I表示模256运算,仏表示明文图像A的行,Di表示行更新预处理后的行; [0059]从第二列开始到最后一列,按公式(2)对图像D的列进行模256的运算,得到预处理 后的图像E;
[0060]
(2)
[0061]其中,仏表示图像D的列,&表示列更新预处理后的列。
[0062] 计算图像E的像素总和,记为s,即:s= 2E(i,j),在生成混沌序列前,不直接用第 一组密钥XQ,yo来迭代混沌映射,而是用图像特征s按公式(3)对第一组密钥 XQ,yQ进行更新:
[0063]
(3):
[0064]将所得的新密钥XQ,yQ代入混沌映射(4)中进行迭代,本发明采用广义Arnold映射:
[0065]
(4)
[0066] 其中a和b为混沌映射的控制参数,去掉前d个迭代值以消除瞬态效应,d为预设的 消除瞬态效应控制参数,选择出两个长度为m+n的混沌序列H= {In,h2,…,hm+n}和!^ = {1 i, l2,-_,lm+n}。这里,序列Η用于反对
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1