一种基于遗传算法的图像加密方法技术

技术编号:22659126 阅读:24 留言:0更新日期:2019-11-28 03:31
本发明专利技术公开了一种基于遗传算法的图像加密方法,首先将明文图像转换为一维数组,即明文图像DNA序列;再采用logistic混沌映射函数映射生成混沌序列,再将混沌序列转换为指定DNA序列;将指定DNA序列和明文图像DNA序列进行异或操作后,计算熵值,采用遗传算法找到熵最大的异或操作后的DNA序列作为密文图像。本发明专利技术一种基于遗传算法的图像加密方法,以遗传算法为主线,分别使用了Logistic混沌映射函数、DNA转换规则及遗传算法,有效地降低了两个相邻像素之间的相关性,增强了图像加密的安全性和鲁棒性。

An image encryption method based on genetic algorithm

The invention discloses an image encryption method based on genetic algorithm, which first converts the plaintext image into a one-dimensional array, that is, the plaintext image DNA sequence; then uses the Logistic chaotic mapping function mapping to generate the chaotic sequence, and then converts the chaotic sequence into the designated DNA sequence; after the exclusive or operation of the designated DNA sequence and the plaintext image DNA sequence, calculates the entropy value, and uses the genetic algorithm to find To the maximum entropy of XOR operation after DNA sequence as ciphertext image. The invention is an image encryption method based on genetic algorithm, which takes genetic algorithm as the main line, uses Logistic chaotic mapping function, DNA conversion rule and genetic algorithm respectively, effectively reduces the correlation between two adjacent pixels, and enhances the security and robustness of image encryption.

【技术实现步骤摘要】
一种基于遗传算法的图像加密方法
本专利技术属于虚拟光学信息加密方法
,涉及一种基于遗传算法的图像加密方法。
技术介绍
图像安全技术有两个重要的组成部分,即图像加密和数字水印,其核心是图像加密。图像加密是根据图像空间域或变换域中的数字图像矩阵的特定特性,按照一定的变换规则改变像素或变换域系数的位置或值,然后对原始图像进行置乱,使其失去原有的外观,进而转化为信道的随机噪声。目前,图像加密技术已经取得了丰硕的研究成果,也提出了很多种图像加密的计算方法,但是这些方法一般都是基于传统的数值计算方法。随着DNA计算规则和量子计算的发展,传统的图像加密算法已经无法抵抗计算机的高速攻击,安全性较差。
技术实现思路
本专利技术的目的是提供一种基于遗传算法的图像加密方法,解决了现有图像加密算法难以抵抗计算机的高速攻击、安全性较差的问题。本专利技术所采用的技术方案是,一种基于遗传算法的图像加密方法,首先将明文图像转换为一维数组,即明文图像DNA序列;再采用logistic混沌映射函数映射生成混沌序列,再将混沌序列转换为指定DNA序列;将指定DNA序列和明文图像DNA序列进行异或操作后,计算熵值,采用遗传算法找到熵最大的异或操作后的DNA序列作为密文图像。本专利技术的特点还在于:包括混沌序列初始值的确定,初始群体的生成和图像加密,具体按照以下步骤实施:步骤1,混沌序列初始值的确定采用随机函数将15个8位字符随机生成120位密匙,具体表述如下:key={K1,K2,...,K15}(1),式(1)中,key表示120位密匙,K1~K15均表示8位字符;由K1~K15计算得到混沌序列初始值X0,具体表述如下:式(2)中,表示异或操作;Ki∈{K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,K11,K12,K13,K14,K15};步骤2,混沌序列的生成将尺寸为M×N的二维模板转换为一维模板,采用logistic混沌映射函数通过混沌序列初始值X0计算得到指定长度的混沌序列,logistic混沌映射函数的表述如下:Xi+1=RXi(1-Xi)(3),式(3)中,R表示混沌映射函数值,且为3.9995;Xi表示混沌序列的第i个值;Xi+1表示混沌序列的第i+1个值;步骤3,初始群体的生成将混沌序列通过映射规则转换为指定DNA序列,即初始群体;步骤4,图像加密生成明文图像DNA序列,将明文图像DNA序列和DNA序列通过遗传算法进行优化,得到最大熵值的明文图像DNA序列和DNA序列,将明文图像DNA序列和DNA序列进行异或操作,实现对明文图像的加密。步骤3具体按照以下步骤实施:步骤3.1,初始群体中每个成员的生成式(4)中,表示向下取整;Pi表示初始群体中第i个成员;Xi表示混沌序列的第i个值,i∈[(n-1)×M×N+1,(n-1)×M×N+M×N],其中n表示指定DNA序列的数量,M×N表示二维模板的尺寸;步骤3.2,将初始群体中每个成员存放于矩阵,矩阵的具体表述如下:[P(n-1)×M×N+1,P(n-1)×M×N+2,...,P(n-1)×M×N+M×N](5),式(5)中,M×N表示二维模板的尺寸;n表示指定DNA序列的数量;P(n-1)×M×N+1表示位于(n-1)×M×N+1位置处的初始群体成员;步骤3.3,将矩阵中的每个成员转换为指定DNA序列,具体表示如下:式(6)中,表示向下取整;Xi表示混沌序列的第i个值;Ri表示对应Xi的规则数。步骤3中,初始群体的每个成员均生成了密钥1和密钥2,其中,密钥1的具体表示方式如下:Key1n=X(n-1)×M×N+1(7),密钥2的具体表示方式如下:式(7)、(8)中,n表示指定DNA序列的数量;M×N表示二维模板的尺寸;X(n-1)×M×N+1表示位于(n-1)×M×N+1位置处的初始群体成员。步骤4中,遗传算法包括轮盘赌、单点交叉、变异和用熵作为适应度函数,具体按照以下步骤实施:步骤4.1,选取明文图像通过映射规则将其转换为一维数组,即明文图像DNA序列,转换规则具体表述如下:R=(imod8)+1(9),式(9)中,R表示转换规则;i表示第i个像素点;步骤4.2,轮盘赌将明文图像DNA序列和指定DNA序列进行异或操作,将异或得到的DNA序列转换为密文图像,转换公式具体表述如下:Pi'=PiXORP'i-1XORDi(10),式(10)中,Pi表示明文图像的第i个像素;Pi'表示密文图像的第i个像素;Di表示明文图像DNA序列的第i个值;XOR表示异或运算;计算密文图像的熵,采用轮盘赌将熵值最大的密文图像DNA序列中的个体进行保留;步骤4.3,单点交叉将明文图像DNA序列和指定DNA序列的尺寸均恢复到二维模板的尺寸,再进行单点交叉生成新群体,具体为根据交叉率来确定需要交叉的父母代的数量,并随机选取父母代进行单点交叉;其中交叉点的选取具体表述如下:W=(M×N)/2+1(11),式(11)中,W表示交叉点的位置;M×N表示二维模板的尺寸;步骤4.4,变异对交叉后的新群体进行变异操作;具体为根据变异率来确定需要变异的新群体中的个体数量,并随机选择个体进行变异;步骤4.5:重复步骤4.1~步骤4.4,直到达到所需迭代次数;将最大熵值的指定DNA序列与明文图像DNA序列进行异或操作,得到加密的明文图像。步骤4.2中,熵的具体表述如下:式(12)中,M表示在密文图像使用的灰度级,M=8;P(si)表示像素si的概率。本专利技术的有益效果是:本专利技术一种基于遗传算法的图像加密方法,有效地降低了两个相邻像素之间的相关性,同时也增加了密文图像的熵;本专利技术一种基于遗传算法的图像加密方法具有很强的密钥敏感性,即便是密钥信息的微小变化也无法获得正确的解密图像,故本专利技术的方法针对常见的攻击具有抵抗力;本专利技术一种基于遗传算法的图像加密方法,选取遗传算法作为优化算法,遗传算法从问题解的串集开始搜索,覆盖面大,其优点是原理和操作简单、通用性强、不受限制条件的约束,且具有隐含并行性,全局解搜索能力,超低的能耗和强大的储存能力。附图说明图1是本专利技术一种基于遗传算法的图像加密方法的流程图;图2是本专利技术一种基于遗传算法的图像加密方法对应的解密算法的流程图;图3是本专利技术一种基于遗传算法的图像加密方法选用的原始图像Lena;图4是本专利技术一种基于遗传算法的图像加密方法选用的原始图像Lena加密之后的密文图像;图5是图4的密文图像解密之后的图像;图6是与图4的密文图像对应的Key1和Key2的MSE曲线图;图6(a)Key1的MSE曲线示意图图6(b)本文档来自技高网...

【技术保护点】
1.一种基于遗传算法的图像加密方法,其特征在于,首先将明文图像转换为一维数组,即明文图像DNA序列;再采用logistic混沌映射函数映射生成混沌序列,再将混沌序列转换为指定DNA序列;将指定DNA序列和明文图像DNA序列进行异或操作后,计算熵值,采用遗传算法找到熵最大的异或操作后的DNA序列作为密文图像。/n

【技术特征摘要】
1.一种基于遗传算法的图像加密方法,其特征在于,首先将明文图像转换为一维数组,即明文图像DNA序列;再采用logistic混沌映射函数映射生成混沌序列,再将混沌序列转换为指定DNA序列;将指定DNA序列和明文图像DNA序列进行异或操作后,计算熵值,采用遗传算法找到熵最大的异或操作后的DNA序列作为密文图像。


2.根据权利要求1所述的一种基于遗传算法的图像加密方法,其特征在于,包括混沌序列初始值的确定,初始群体的生成和图像加密,具体按照以下步骤实施:
步骤1,混沌序列初始值的确定
采用随机函数将15个8位字符随机生成120位密匙,具体表述如下:
key={K1,K2,...,K15}(1),
式(1)中,key表示120位密匙,K1~K15均表示8位字符;
由K1~K15计算得到混沌序列初始值X0,具体表述如下:



式(2)中,表示异或操作;Ki∈{K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,K11,K12,K13,K14,K15};
步骤2,混沌序列的生成
将尺寸为M×N的二维模板转换为一维模板,采用logistic混沌映射函数通过混沌序列初始值X0计算得到指定长度的混沌序列,所述logistic混沌映射函数的表述如下:
Xi+1=RXi(1-Xi)(3),
式(3)中,R表示混沌映射函数值,且为3.9995;Xi表示混沌序列的第i个值;Xi+1表示混沌序列的第i+1个值;
步骤3,初始群体的生成
将所述混沌序列通过映射规则转换为指定DNA序列,即初始群体;
步骤4,图像加密
生成明文图像DNA序列,将所述明文图像DNA序列和DNA序列通过遗传算法进行优化,得到最大熵值的明文图像DNA序列和DNA序列,将所述明文图像DNA序列和DNA序列进行异或操作,实现对明文图像的加密。


3.根据权利要求2所述的一种基于遗传算法的图像加密方法,其特征在于,所述步骤3具体按照以下步骤实施:
步骤3.1,初始群体中每个成员的生成



式(4)中,表示向下取整;Pi表示初始群体中第i个成员;Xi表示混沌序列的第i个值,i∈[(n-1)×M×N+1,(n-1)×M×N+M×N],其中n表示指定DNA序列的数量,M×N表示二维模板的尺寸;
步骤3.2,将初始群体中每个成员存放于矩阵,所述矩阵的具体表述如下:
[P(n-1)×M×N+1,P(n-1)×M×N+2,...,P(n-1)×M×N+M×N](5),
式(5)中,M×N表示二维模板的尺寸;n表示指定DNA序列的数量;P(n-1)×M×N+1表示位于(n-1)×M×N...

【专利技术属性】
技术研发人员:隋连升郑一瑶王战敏刘青文
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1