公开/公告号CN109660695A
专利类型发明专利
公开/公告日2019-04-19
原文格式PDF
申请/专利权人 广西师范大学;
申请/专利号CN201811488743.2
申请日2018-12-06
分类号H04N1/32(20060101);H04L9/00(20060101);H04L9/06(20060101);H04L9/08(20060101);G06N3/00(20060101);
代理机构45112 桂林市华杰专利商标事务所有限责任公司;
代理人刘梅芳
地址 541004 广西壮族自治区桂林市七星区育才路15号
入库时间 2024-02-19 10:02:02
法律状态公告日
法律状态信息
法律状态
2020-03-10
授权
授权
2019-05-14
实质审查的生效 IPC(主分类):H04N1/32 申请日:20181206
实质审查的生效
2019-04-19
公开
公开
技术领域
本发明涉及图像加密技术领域,具体是一种基于遗传模拟退火算法和混沌映射的彩色图像加密方法。
背景技术
图像加密技术不仅能够增强图像信息传输的安全性和可靠性,还可以提高图像的抗攻击能力,确保重要的图像信息更加安全地传输。然而,由于图像相邻像素具有高度相关性,使得针对常规文本设计的传统加密算法(如AES和DES等)并不适用于图像加密。此外,由于混沌系统具有复杂非线性动力学性能,其拥有良好的伪随机特性、轨道的不可预测性以及对初始状态和控制参数极端敏感等特性,因此混沌系统适用于图像加密。
在基于混沌系统的图像加密算法中,“置乱-扩散”的图像加密框架被广泛运用。其中,置乱操作可以改变像素的位置,扩散操作可以改变像素的灰度值。然而,单纯的置乱或扩散操作存在安全性低,易被单独攻击等问题。
发明内容
本发明的目的是针对现有技术的不足,而提供一种基于遗传模拟退火算法和混沌映射的彩色图像加密方法。这种方法能增强图像信息的安全性,提高加密处理的效率,能增强图像的鲁棒性,这种方法安全性高,可以抵抗常见图像攻击。
实现本发明目的的技术方案是:
一种基于遗传模拟退火算法和混沌映射的彩色图像加密方法,与现有技术不同处在于,包括如下步骤:
1)生成整数序列:将明文图像I作为MD5哈希的输入生成与明文相关的密钥,并作为混沌系统的初始值,依据混沌系统初始值迭代生成混沌序列并对其执行量化操作,生成整数序列;
2)对明文图像I中的R、G、B三层进行选择和交叉操作:对步骤1)得到的整数序列和明文图像I中的R、G、B三层进行二进制位平面分解产生8个位平面并重新组成一维向量,生成混沌二进制位序列,然后设置混沌二进制序列为掩码,通过掩码中“0”和“1”来选择和交叉明文图像,最后再将选择和交叉操作后的二进制图像序列恢复到像素级,生成交叉序列;
3)对交叉序列各层执行基于模拟退火算法的置乱操作:首先对混沌序列进行减法操作得到目标函数L1、L2和L3,然后判断目标函数,如果L1(t)≥0,则最优解
4)判断是否执行变异操作:计算明文图像I和置乱图像各层的适应度,并通过明文图像I和置乱图像的适应度来判断是否执行变异操作,如果明文图像I的适应度大于置乱图像的适应度,则重新选择参数生成混沌序列并重新执行选择、交叉和置乱操作;否则根据置乱图像的适应度计算混沌系统的初始值并迭代混沌系统获得混沌序列,并对混沌系统进行量化处理得到整数序列;
5)获得最终加密图像E:将各层置乱序列执行交互式变异操作并将变异序列合并获得最终加密图像E。
所述步骤1)的过程为:
将明文图像I作为MD5哈希的输入,并把MD5哈希生成的128位密钥H分成32个子密钥,每个块的长度是4位,如公式(1)所示:
H=h1,h2,h3,...,h32>
然后,定义x'1、y'1、z'1和x'2、y'2、z'2的值,因此混沌系统的初始值x1(1)、y1(1)、z1(1)和x2(1)、y2(1)、z2(1)可以由公式(2)得到,依据混沌系统初始值迭代生成两组混沌序列x1、y1、z1和x2、y2、z2,并对其执行量化操作得到整数序列X1、Y1、Z1和X2、Y2、Z2,如公式(3)所示:
所述步骤2)的过程为:
对整数序列X1、Y1、Z1和明文图像I各层IR、IG、IB进行二进制位平面分解产生8个位平面并重新组成一维向量,生成二进制位序列,然后设置混沌二进制序列为掩码,通过掩码中“0”和“1”来选择和交叉图像,如果掩码值是“1”,则保持图像的位不变;否则翻转该图像的位来获得新的位,最后再将选择和交叉操作后的二进制图像序列恢复到像素级,生成交叉序列I”R、I”G和I”B。
所述步骤3)的过程为:
采用模拟退火算法设计最优伪随机序列对交叉图像进行置乱操作来获得置乱图像,基于模拟退火算法的图像置乱步骤如下:
首先产生目标函数,依据公式(4)对混沌序列X2、Y2、Z2进行减法操作得到目标函数L1,L2和L3(1≤i≤M×N,M和N分别为明文图像I的长和宽):
然后判断目标函数,令t=1,执行以下操作:
a.如果L1(t)≥0,则最优解
b.令t=t+1,并返回a步骤,直到t=M×N,最终得到用于图像的置乱操作的三个最优序列
最后执行基于模拟退火算法的图像置乱操作,根据最优序列
所述步骤4)的过程为:
将明文和置乱图像视为一个整体来计算其适应度,如公式(8)所示,其中,F表示适应度函数,Img表示明文或置乱图像矩阵,通过公式(8)可以得到明文图像各层IR、IG、IB和置乱图像
然后,依据明文图像和置乱图像的适应度来判断是否执行变异操作,如果(FR1+FG1+FB1)×En1>(FR2+FG2+FB2)×En2,En1和En2为明文图像和置乱图像的信息熵,则重新选择参数x'1、y'1、z'1和x'2、y'2、z'2并返回步骤1)重新选择、交叉和置乱图像,否则由公式(9)计算混沌系统的初始值x3(1)、y3(1)、z3(1)并迭代混沌系统获得混沌序列x3、y3和z3,然后依据公式(10)对混沌系统进行量化处理得到整数序列X3、Y3和Z3,
所述步骤5)的过程为:
将置乱序列
本技术方案的有益效果体现在:
1)混沌系统的初始值分别由明文图像I的MD5哈希值和明文和置乱图像的适应度生成,它们是交叉和选择、置乱和变异过程中的重要组成部分,因此加密图像非常依赖明文图像I,并且对抵抗已知攻击和选择明文攻击是安全的;
2)本技术方案对明文图像I进行选择和交叉操作,然后利用模拟退火算法生成的最优序列对图像进行置乱,通过这三个操作可以使置乱图像的直方图达到均衡,从而可以抵抗统计攻击;
3)为了增强图像各层的相关性,本技术方案利用彩色图像交互的方法对置乱图像进行交互式变异操作,该操作由明文图像I和置乱图像的适应度来进行判断是否执行;
4)相比传统的“置乱-扩散”加密框架相比,本技术方案不仅可以增加加密系统的复杂度,而且可以增强加密算法对明文图像I的敏感性。
本技术方案的加密方法具有大密钥空间、高安全性和对明文图像的高敏感性,因此可以抵抗常见的图像攻击。
这种方法能增强图像信息的安全性,提高加密处理的效率,能增强图像的鲁棒性,这种方法安全性高,可以抵抗常见图像攻击。
附图说明
图1为实施例方法的流程示意图;
图2为实施例中选择交叉过程示意图。
具体实施方式
下面结合附图和实施例对本发明内容作进一步的阐述,但不是对本发明的限定。
实施例:
参照图1,一种基于遗传模拟退火算法和混沌映射的彩色图像加密方法,包括如下步骤:
1)生成整数序列:将明文图像I作为MD5哈希的输入生成与明文相关的密钥,并作为混沌系统的初始值,依据混沌系统初始值迭代生成混沌序列并对其执行量化操作,生成整数序列;
2)对明文图像I中的R、G、B三层进行选择和交叉操作:对步骤1)得到的整数序列和明文图像I中的R、G、B三层进行二进制位平面分解产生8个位平面并重新组成一维向量,生成混沌二进制位序列,然后设置混沌二进制序列为掩码,通过掩码中“0”和“1”来选择和交叉明文图像I,最后再将选择和交叉操作后的二进制图像序列恢复到像素级,生成交叉序列;
3)对交叉序列各层执行基于模拟退火算法的置乱操作:首先对混沌序列进行减法操作得到目标函数L1、L2和L3,然后判断目标函数,如果L1(t)≥0,则最优解
4)判断是否执行变异操作:计算明文图像I和置乱图像各层的适应度,并通过明文图像I和置乱图像的适应度来判断是否执行变异操作,如果明文图像I的适应度大于置乱图像的适应度,则重新选择参数生成混沌序列并重新执行选择、交叉和置乱操作;否则根据置乱图像的适应度计算混沌系统的初始值并迭代混沌系统获得混沌序列,并对混沌系统进行量化处理得到整数序列;
5)获得最终加密图像E:为了增强图像各层的相关性,将各层置乱序列执行交互式变异操作并将变异序列合并获得最终加密图像E。
所述步骤1)的过程为:
将明文图像I作为MD5哈希的输入,并把MD5哈希生成的128位密钥H分成32个子密钥,每个块的长度是4位,如公式(1)所示:
H=h1,h2,h3,...,h32>
然后,定义x'1、y'1、z'1和x'2、y'2、z'2的值,因此混沌系统的初始值x1(1)、y1(1)、z1(1)和x2(1)、y2(1)、z2(1)可以由公式(2)得到,依据混沌系统初始值迭代生成两组混沌序列x1、y1、z1和x2、y2、z2,并对其执行量化操作得到整数序列X1、Y1、Z1和X2、Y2、Z2,如公式(3)所示:
参照图2,所述步骤2)的过程为:
对整数序列X1、Y1、Z1和明文图像各层IR、IG、IB进行二进制位平面分解产生8个位平面并重新组成一维向量,生成二进制位序列,然后设置混沌二进制序列为掩码,通过掩码中“0”和“1”来选择和交叉图像,如果掩码值是“1”,则保持图像的位不变;否则翻转该图像的位来获得新的位,最后再将选择和交叉操作后的二进制图像序列恢复到像素级,生成交叉序列I”R、I”G和I”B。
所述步骤3)的过程为:
采用模拟退火算法设计最优伪随机序列对交叉图像进行置乱操作来获得置乱图像,基于模拟退火算法的图像置乱步骤如下:
首先产生目标函数,依据公式(4)对混沌序列X2、Y2、Z2进行减法操作得到目标函数L1,L2和L3(1≤i≤M×N,M和N分别为明文图像I的长和宽):
然后判断目标函数,令t=1,执行以下操作:
a.如果L1(t)≥0,则最优解
b.令t=t+1,并返回a步骤,直到t=M×N,最终得到用于图像的置乱操作的三个最优序列
最后执行基于模拟退火算法的图像置乱操作,根据最优序列
所述步骤4)的过程为:
将明文和置乱图像视为一个整体来计算其适应度,如公式(8)所示,其中,F表示适应度函数,Img表示明文或置乱图像矩阵,通过公式(8)可以得到明文图像各层IR、IG、IB和置乱图像
然后,依据明文图像和置乱图像的适应度来判断是否执行变异操作,如果(FR1+FG1+FB1)×En1>(FR2+FG2+FB2)×En2,En1和En2为明文图像I和置乱图像的信息熵,则重新选择参数x'1、y'1、z'1和x'2、y'2、z'2并返回步骤1)重新选择、交叉和置乱图像,否则由公式(9)计算混沌系统的初始值x3(1)、y3(1)、z3(1)并迭代混沌系统获得混沌序列x3、y3和z3,然后依据公式(10)对混沌系统进行量化处理得到整数序列X3、Y3和Z3,
所述步骤5)的过程为:
将置乱序列
机译: 基于混沌映射的数字混沌加密方法
机译: 基于混沌映射的数字混沌加密方法
机译: 基于混沌映射的数字混沌加密方法