一种基于混合混沌映射的单轮图像加密方法

文档序号:1172711 发布日期:2020-09-18 浏览:5次 >En<

阅读说明:本技术 一种基于混合混沌映射的单轮图像加密方法 (Single-round image encryption method based on mixed chaotic mapping ) 是由 贵向泉 黄�俊 李立 曹洁 赵付青 唐建新 李守亮 张永虎 于 2020-06-08 设计创作,主要内容包括:一种基于混合混沌映射的单轮图像加密方法,其步骤为:一维二维混合混沌映射,图像加密步骤及图像解密步骤。本发明提供了基于一维混沌映射与二维混沌映射的混合的超混沌映射(Mixed one and two dimensional chaotic map,MOTDCM),能够提供随机的,均匀分布的混沌序列,基于该超混沌系统,设计了一个全文动态相关的加密方法,联合置乱与扩散过程,降低了常规加密方法的计算复杂度和时间开销,增强了方法抵抗选择明文攻击的能力。(A single-round image encryption method based on mixed chaotic mapping comprises the following steps: one-dimensional and two-dimensional mixed chaotic mapping, an image encryption step and an image decryption step. The invention provides a Mixed one-dimensional and two-dimensional chaotic mapping (MOTDCM) based on the one-dimensional chaotic mapping and the two-dimensional chaotic mapping, which can provide random and uniformly distributed chaotic sequences.)

一种基于混合混沌映射的单轮图像加密方法

技术领域

本发明涉及数字图像加密技术领域。

背景技术

随着计算机网络技术的快速发展,许多私密的图像信息如医疗图像、军事卫星图像等在该公共网络上进行传输。因而,图像信息的安全性引起了大家的极大关注。但是,传统的加密方法如DES、RSA等不再适合加密图像信息,这主要是因为图像信息相比文本信息来说,具有数据量大、冗余度高、像素之间相关性强等特点。因此,一个有效的图像加密方法应该能够避免图像在传输和存储时被攻击者偷窃和解密。最近十几年,混沌系统由于其类随机特性、遍历性等被广泛地应用到数字图像加密中。

1998年,J.Fridrich将混沌系统应用到数字图像加密中,提出了经典的置乱-扩散结构。置乱是改变在原始图像中这些每一个像素的位置,目的是区破坏像素在空间的分布和局部之间的相关性,使得图像不能够去识别确认;扩散是使混淆当前像素值,使当前像素值与其余的像素相关,从而使得图像中任何一个像素的变化都能最大程度的影响到密文,从而能够有效抵抗差分攻击。近几年,为了提升加密方法的效率和安全性,压缩感知、DNA编码、S盒等技术也应用到了混沌图像加密中。

虽然加密方法的演变带来了一定效率与安全性的提升,但是也存在一些问题有待解决:(1)混沌系统,不论是连续混沌系统还是离散混沌系统,系统的动力学特性不够丰富,产生的序列类随机性有待进一步提高;(2)在置乱阶段,产生的置乱混沌序列与明文的相关性不强,容易遭受选择明文攻击;(3)在置乱阶段和扩散阶段使用了不同混沌序列,这增加了计算的复杂度和时间开销。

发明内容

本发明的目的是提供一种基于混合混沌映射的单轮图像加密方法。

本发明是一种基于混合混沌映射的单轮图像加密方法,其步骤为:一维二维混合混沌映射,图像加密步骤及图像解密步骤。

本发明的有益之处是:提供了一种基于一维混沌映射与二维混沌映射的混合的超混沌映射(Mixed one and two dimensional chaotic map,MOTDCM),能够提供随机的,均匀分布的混沌序列,基于该超混沌系统,设计了一个全文动态相关的加密方法,联合置乱与扩散过程,降低了常规加密方法的计算复杂度和时间开销,增强了方法抵抗选择明文攻击的能力。

附图说明

图1为MOTDCM模型图,图2为MOTDCM模型轨迹图,李雅普诺夫指数,排列熵,图3为MOTDCM模型李雅普诺夫指数图,图4为MOTDCM模型排列熵图,图5为加密方法流程图,图6为正向置乱与扩散加密示意图,图7为Lena原图,图8为使用本文方法对Lena图片的加密结果图,图9为使用本文方法对Lena加密结果的解密图,图10为差分攻击分析NPCR结果图,图11为差分攻击分析UACI结果图,图12为差分攻击分析BACI结果图。

具体实施方式

本发明是一种基于混合混沌映射的单轮图像加密方法,其步骤为:一维二维混合混沌映射,图像加密步骤及图像解密步骤。

以上所述的基于混合混沌映射的单轮图像加密方法,一维二维混合混沌映射,其公式为:

其中α,β,γ1,γ2为此映射的四个参数,其取值范围为α∈[0,6],β∈[0,6],γ1∈[0,2],γ2[0,2]。

以上所述的基于混合混沌映射的单轮图像加密方法,所述的图像加密步骤,

输入:大小为M*N的明文图像P,根据明文图像计算产生的初始值K=α,β,γ1,γ2,x0,y0};

输出:加密后的图像C;

步骤(1):初始值K输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出;并获取E升序排列的序号序列S;

步骤(2):遍历序列S,记当前遍历下标为j,遍历的方向由初始值,密文像素值共同决定,并且每一次加密之后需要重新计算遍历方向,遍历方向由标志位index的值判断,当index=0时遍历方向从左往右,当index=1时遍历方向从右往左,index的计算方式如下式所示,其中i∈[1,M×N],用于表示计算的次数;

Figure BDA0002528230330000022

在S的遍历过程中对明文序列P进行置乱和扩散处理以得到密文C,其中i=1,2...,M×N。处理过程如式所示:

Figure BDA0002528230330000023

步骤3:对步骤2内处理得到的密文C利用混沌序列E1进行反向遍历,遍历过程中对密文C进行扩散操作,扩散操作如下式所示:

反向扩散加密之后即可得到加密结果C。

以上所述的基于混合混沌映射的单轮图像加密方法,图像解密步骤为:

输入:大小为M*N的密文图像C,根据明文图像计算产生的初始值K={α,β,γ1,γ2,x0,y0};

输出:解密后的图像P;

步骤(1):初始值K输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出;并获取E升序排列的序号序列S;

步骤(2):对加密过程中的反向扩散过程进行逆向;正向遍历密文C,利用混沌序列E1进行异或以达到对扩散解密的效果;处理过程如下式所示:

步骤(3):对加密过程中的正向置换扩散过程中的扩散过程进行逆向;反向遍历密文C,利用序列E进行解密;解密过程如式所示:

步骤(4):对加密过程中的正向置换扩散过程中的置换过程进行逆向.根据加密过程中的步骤(3)计算遍历S过程中的j,解密过程如式所示:

P(S(j))=C(i)。

MOTTOM混沌映射说明:

MOTTOM混沌映射是一种混合混沌映射,综合了二维Logistic方程和改进的一维Feigenbaum超越方程的特性下提出的,其模型与二维Logistic方程结构一样,但在其基础上用改进的一维Feigenbaum超越方程对y做了预处理,其公式为:

其中F(x)是改进的一维Feigenbaum超越方程,其公式为:

F(x)=3*sin(π*x)

则此映射的完整公式为:

其中α,β,γ1,γ2为此映射的四个参数,其取值范围为α∈[0,6],β∈[0,6],γ1∈[0,2],γ2∈[0,2]。

图像加密步骤:

加密过程分为正向置乱与扩散加密过程与反向扩散加密过程

输入:大小为M*N的待加密图像。

输出:加密结果密文C

步骤1:为了保证密钥与明文的相关性,本发明采用SHA-256方案生成的Hash值作为加密系统的密钥。密钥长度为256bit,并且高度与明文相关,明文的任意像素改变均会引起密钥的变化。为生成明文相关的混沌序列,首先,将256位的密钥H分割成K1,K2,K3...K32

然后根据K1,K2,K3...K32计算h1,h2,h3,h4,计算规则如下:

Figure BDA0002528230330000041

然后根据h1,h2,h3,h4计算α,β,γ12,x0,y0,由于MOTDCM映射的初始值有一定范围,为保证密码离散型的条件下混沌映射的混沌性,需要对初值的产生设置初值,此处设置初值产生规则如下式所示:

正向置换扩散加密过程:

步骤2:将初始值K={α,β,γ1,γ2,x0,y0}输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出。并获取E升序排列的序号序列S,将二维明文图像P转化为一维序列。

遍历序列S,记当前遍历下标为j,遍历的方向由初始值,密文像素值共同决定,并且每一次加密之后需要重新计算遍历方向,遍历方向由标志位index的值判断,当index=0时遍历方向从左往右,当index=1时遍历方向从右往左,index的计算方式如下式所示,其中i∈[1,M×N],用于表示计算的次数。

在S的遍历过程中对明文序列P进行置乱和扩散处理以得到密文C,其中i=1,2...,M×N。处理过程如式所示:

反向扩散加密过程:

步骤3:对步骤2内处理得到的密文C利用混沌序列E1进行反向遍历,遍历过程中对密文C进行扩散操作,扩散操作如下式所示。

反向扩散加密之后即可得到加密结果C

图像解密步骤:

输入:大小为M*N的密文图像C,根据明文图像计算产生的初始值K={α,β,γ1,γ2,x0,y0}

输出:解密后的图像P

步骤1:初始值K输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出。并获取E升序排列的序号序列S。

步骤2:对加密过程中的反向扩散过程进行逆向。正向遍历密文C,利用混沌序列E1进行异或以达到对扩散解密的效果。处理过程如下式所示:

步骤3:对加密过程中的正向置换扩散过程中的扩散过程进行逆向。反向遍历密文C,利用序列E进行解密。解密过程如式所示:

Figure BDA0002528230330000053

步骤4:对加密过程中的正向置换扩散过程中的置换过程进行逆向。根据加密过程中的步骤3计算遍历S递增过程中的j,解密过程如下式所示。

P(S(j))=C(i)

下面结合附图以具体实施例来详细说明本发明。

图1是一维二维混合混沌映射模型图(Mixed one and two dimensional chaoticmap,MOTDCM),如图1的模型所示,该映射是一个二维映射,在二维Logistic映射的基础上使用一维改进的Feigenbaum映射对y做预处理,其公式为:

Figure BDA0002528230330000054

其中F(x)是改进的一维Feigenbaum超越方程,其公式为:

F(x)=3*sin(π*x)

则此映射的完整公式为:

其中α,β,γ1,γ2为此映射的四个参数,其取值范围为α∈[0,6],β∈[0,6],γ1∈[0,2],γ2∈[0,2]。

图2为映射迭代的混沌序列排列轨迹图,从图中可以看出,该映射产生的混沌序列是均匀随机的分布在[0,1]区间内的。图3为映射的李雅普诺夫指数图,李雅普诺夫指数描述的是随机映射在连续的迭代过程中的指数增长速率,只要随机映射的最大李雅普诺夫指数大于零,就可以肯定混沌的存在,当映射的所有李雅普诺夫指数均大于0,则该映射存在超混沌特性,并且最大李雅普诺夫指数的数值越大,说明映射的非线性效果越好。从图中可以看出该映射有着非常好的非线性效果。图4展示的是该映射的排列熵状态,排列熵描述的是随机序列随机复杂程度的,从图中可以看出,其排列熵值在整个区间内无限趋近于1,说明该映射产生的序列较为复杂和随机。

图5为图像加密流程图,如图所示,加密过程分为正向置乱与扩散加密过程与反向扩散加密过程:

输入:大小为M*N的待加密图像。

输出:加密结果密文C。

步骤1:为了保证密钥与明文的相关性,本文采用SHA-256方案生成的Hash值作为加密系统的密钥。密钥长度为256bit,并且高度与明文相关,明文的任意像素改变均会引起密钥的变化。为生成明文相关的混沌序列,首先,将256位的密钥H分割成K1,K2,K3...K32

计算h1,h2,h3,h4,计算规则如下所示

然后根据h1,h2,h3,h4计算α,β,γ1,γ2,x0,y0,由于MOTDCM映射的初始值有一定范围,为保证密码离散型的条件下保证混沌映射的混沌性,需要对初值的产生设置初值,此处设置初值产生规则如下式所示。

Figure BDA0002528230330000063

图6展示的是正向置乱扩散加密过程示意图,如图所示:

正向置换扩散加密过程:

步骤2:初始值K={α,β,γ1,γ2,x0,y0}输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出。并获取E升序排列的序号序列S,将二维明文图像P转化为一维序列。

遍历序列S,记当前遍历S的下标为j,遍历的方向由初始值,密文像素值共同决定,并且每一次加密之后需要重新计算遍历方向,遍历方向由标志位index的值判断,当index=0遍历方向从左往右,当index=1时便利方向从右往左index的计算方式如下式所示,其中i∈[1,M×N],表示计算的次数。

在S的遍历过程中对明文序列P进行置乱和扩散处理以得到密文C,其中i=1,2...,M×N。处理过程如式所示:

反向扩散加密过程:

步骤3:对步骤2内处理得到的密文C利用混沌序列E1进行反向遍历,遍历过程中对密文C进行扩散操作,扩散操作如下式所示:

Figure BDA0002528230330000073

反向扩散加密之后即可得到加密结果C。

图像解密步骤:

输入:大小为M*N的密文图像C,根据明文图像计算产生的初始值K={α,β,γ1,γ2,x0,y0}。

输出:解密后的图像P。

步骤1:初始值K输入MOTDCM映射进行M*N+N0次的迭代,其中N0为一常数,为了克服暂态效应,舍去前N0个序列,得到混沌序列E和E1,分别来自于MOTDCM映射的x输出和y输出。并获取E升序排列的序号序列S。

步骤2:对加密过程中的反向扩散过程进行逆向。正向遍历密文C,利用混沌序列E1进行异或以达到对扩散解密的效果。处理过程如下式所示:

步骤3:对加密过程中的正向置换扩散过程中的扩散过程进行逆向。反向遍历密文C,利用序列E进行解密。解密过程如式所示:

步骤4:对加密过程中的正向置换扩散过程中的置换过程进行逆向.根据加密过程中的步骤3计算遍历S过程中的j,解密过程如式所示:

P(S(j))=C(i)

图7,8,9展示的标准灰度图像Lean原图,Lean加密图,以及Lena解密图。

为了对加密结果进行差分攻击分析,针对Lean图像,随机选取一个像素的值使其与1进行异或来改变其最像素的低位,然后对改变之后的图与原图进行加密,计算加密结果的NPCR,UACI,BACI值,其理论值分别为99.6094%,33.4635%,26.7712%,重复此过程150次之后的三个指标图分别如图10,11,12所示。从图中可以看出三个指标的实验结果均围绕理论值做微小变化,其平均值与理论值的差分别为0.0150%,0.0139%,0.0037%。实验结果充分说明该方法能够有效的抵抗差分攻击。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于多参数五维超混沌系统的动态密码电子锁

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!