基于猫脸变换和混沌的图像信息融合加密方法与流程

文档序号:12064699阅读:675来源:国知局
基于猫脸变换和混沌的图像信息融合加密方法与流程

本发明属于图像处理技术领域,特别涉及一种图像加密方法,可用于信息安全。



背景技术:

随着计算机技术、网络技术以及多媒体技术的迅猛发展,在成功解决因数字图像数据量大而导致的存储和传输瓶颈后,数字图像已成为信息表达方式的主流。但数字图像在传输过程中仍存在诸多安全隐患,图像信息安全问题不仅关系到个人隐私和企业的商业机密,而且更重要的是关系到国家的安全,特别是军事机密,因此图像信息的安全备受重视。图像加密技术是保护图像安全最直接有效的手段,已成为信息加密技术的重要热点课题,研究图像加密具有重要的意义。

将数字图像作为矩阵进行有限次的初等变换以达到使图像像素点杂乱无章的效果,这是基于置乱的图像加密技术的核心思想,如猫脸变换。猫脸变换可以看成是将矩阵裁剪和拼接的过程,但由于猫脸变换固有的动力系统特性,当运行到特定的次数之后图像像素点又会恢复原来的排列,也即猫脸变换的周期性。广义猫脸变换是猫脸变换的推广,具有2个参数,但仅用这一种方法并不能使图像的置乱程度达到较理想的状态。

由于混沌系统对初始条件和控制参数极其敏感,还具有内随机性,非周期性,遍历性等特点,所以利用混沌进行图像加密是一种有效加密方法。目前混沌加密技术的研究大多是基于一维和二维混沌系统的研究,虽然具有形式比较简单,运行速度快等优点,但是基于低维混沌的加密算法密钥空间小,导致安全性不高,有研究表明低维混沌系统保密性是不够的。虽然有使用多维的混沌系统加密图像,但基于这些系统的加密方法的安全性仍然还不够高,而超混沌系统具有不少于两个的李雅普诺夫指数,具有更大的密钥空间、更好的随机性,表现出更复杂的系统特征,用超混沌系统对数字图像进行加密的效果比低维的混浊系统更好。广义三维Henon混沌是超混沌系统,具有两个李雅普诺夫指数。若用单一的混沌系统加密图像,密钥空间相对小,安全性能较低,且一些混沌系统的不安全性已经被证明,综合更多的混沌系统有更大的密钥空间,更高的安全性。

传统的使用混沌对图像加密方法主要是利用混沌序列进行置乱再结合异或运算进行加密。其存在的不足是:1.单用混沌序列对图像中的像素置乱的不够充分,没有与广义猫脸变换结合进行置乱的效果好,所以安全性不高;2.混沌生成序列长度的范围仅仅局限于图像长宽之和的长度或者是和图像大小相等的长度,没有对更多的混沌序列加以利用,安全性受到一定的限制;3.异或运算的操作过于简单,相比于结合混沌序列和图像信息融合技术进行加密的效果要差,故安全性相对较差。



技术实现要素:

本发明的目的在于针对上述已有技术的不足,提供一种基于猫脸变换和混沌的图像信息融合加密方法,以提高图像加密的安全性。

本发明的技术方案是:首先对待加密图像利用广义猫脸变换进行初步置乱,然后将初步置乱的图像插入由广义三维Henon混沌系统生成的长宽为待加密图像4倍的图像,最后利用图像信息融合技术缩小图像,得到加密图像。其实现步骤包括如下:

(1)输入一幅N×N的灰度图像F,获得该灰度图像的二维矩阵f(s,t);

(2)选取广义猫脸变换的变换矩阵的两个参数a、b和迭代次数m,对灰度图像的二维矩阵f(s,t)进行m次广义猫脸变换,得到置乱后的图像矩阵f1(s,t);

(3)分别选取x1,0、y1,0、z1,0作为广义三维Henon超混沌系统的初值,并将该初始值代入广义三维Henon超混沌系统中进行迭代,得到三个广义三维Henon超混沌序列{x1,i}、{y1,i}、{z1,i},i=1,2,...,4N×4N;

(4)将第一个广义三维Henon超混沌序列{x1,i}的值映射到0-255之间,再将该广义三维Henon超混沌序列{x1,i}按次序逐行排列成长为4N、宽为4N的混沌生成图像矩阵f*(s,t);

(5)分别选取x2,0、y2,0、z2,0作为洛伦兹混沌系统的初值,将该初始值代入洛伦兹混沌系统中进行求解,得到三个初始的洛伦兹混沌序列{x2,j}、{y2,j}、{z2,j},j=1,2,...,4000+N×N;

(6)选取第一个初始的洛伦兹混沌序列{x2,j},舍去该洛伦兹混沌序列{x2,j}的前4000个值,重新对其进行编号,得到洛伦兹混沌序列{x′2,ω},ω=1,2,...,N×N;

(7)对洛伦兹混沌序列{x′2,ω}的第ω个值x′2,ω进行mod(round((x′2,ω+0.5)×107),256)操作,得到修改后的洛伦兹混沌序列{x″2,ω},其中ω=1,2,...,N×N;

(8)将修改后的洛伦兹混沌序列{x″2,ω}转化成8位二值序列,并且截取第ω个元素x″2,ω的第3~6位作为二进制串序列{Bω}的第ω个元素Bω的值,ω=1,2,...,N×N;

(9)将混沌生成图像矩阵f*(s,t)分成N×N个4×4大小的矩阵块,并将位于(x,y)处的矩阵块记为A(x,y),则f*(s,t)=[A(x,y)]N×N;再将置乱后的图像矩阵f1(s,t)中位于(x,y)处的像素值f1(x,y)插入到矩阵块A(x,y)中,得到插入后图像矩阵

(10)对插入后图像矩阵中每个矩阵块A(x,y)中的元素值进行求和,并将该和值除以256所得的余数作为最终加密图g(s,t)在(x,y)处的像素值。

本发明的有益效果为:

1.本发明利用广义猫脸变换对图像进行像素置乱,极大降低了密文像素间的相关性;

2.本发明利用广义三维Henon超混沌系统生成的混沌生成图像矩阵具有很好的随机性,并且具有敏感性较高的密钥参数;

3.本发明利用洛伦兹混沌生成二进制序列具有很好的随机性,使得置乱后的图像矩阵能够随机的插入到混沌生成图像矩阵,进而充分置乱图像;

4.本发明采用图像信息融合技术可以有效隐蔽图像信息,使图像加密方法具有很高的安全性。

附图说明

图1是本发明的实现流程图;

图2是本发明使用的原始图像;

图3是对图2加密后的图像;

图4是图2的灰度直方图;

图5是用本发明方法及三个对比方法对图2进行加密后的灰度直方图;

图6是本发明方法及三个对比方法的密钥敏感性分析图。

具体实施方式

参照图1,本发明的具体实施步骤如下:

步骤1,输入一幅N×N的灰度图像F,获得该灰度图像的二维矩阵f(s,t)。

调用imread函数读入一幅N×N的灰度图像作为待加密图像,如图2所示,获得该

灰度图像的二维矩阵f(s,t),此时N=256。

步骤2,对灰度图像的二维矩阵f(s,t)进行10次广义猫脸变换,得到置乱后的图像

矩阵f1(s,t)。

广义猫脸变换公式如下:

其中称为变换矩阵,a、b为变换矩阵的两个不同的参数;x、y分别为变换前的横坐标、纵坐标;x′、y′为广义猫脸变换作用后的横坐标、纵坐标;mod表示模运算。

选取广义猫脸变换的变换矩阵参数a=7,b=9和迭代次数m=10,利用广义猫脸变换公式对二维矩阵f(s,t)进行如下变换:

2a)获取灰度图像的二维矩阵f(s,t)中的每一个像素点的坐标(x,y)处的像素值;

2b)将灰度图像的二维矩阵阵f(s,t)中的每一个像素点的坐标(x,y)都按照上述的广义猫脸变换进行坐标变换,得到坐标(x′,y′);

2c)将原像素值赋到新坐标(x′,y′)上,完成当前的广义猫脸变换;

2d)重复2a)到2c)进行上述变换9次,得到置乱后的图像矩阵f1(s,t)。

步骤3,选取广义三维Henon超混沌系统的初值,计算三个广义三维Henon超混沌序列。

3a)输入广义三维Henon超混沌的三个初始值x1,0=0.81、y1,0=0.64、z1,0=0.53,令k=1;

3b)计算第一个广义三维Henon超混沌序列{x1,i}的第k个元素x1,k,其中α=1.4;

3c)计算第二个广义三维Henon超混沌序列{y1,i}的第k个元素y1,k,其中β=0.2;

3d)计算第三个广义三维Henon超混沌序列{z1,i}的第k个元素z1,k,z1,k=βx1,k-1

3e)将k的数值增加1,判断k与4N×4N=1048576的大小关系,如果k<1048576,返回3b);否则,跳出循环,终止计算,得到三个广义三维Henon超混沌序列{x1,i}、{y1,i}、{z1,i},其中i=1,2,...,4N×4N。

步骤4,将第一个广义三维Henon超混沌序列{x1,i}的值映射到0-255之间,然后通过排列得到混沌生成图像矩阵f*(s,t)。

4a)用mapminmax函数将第一个广义三维Henon超混沌序列{x1,i}的值映射到[-1,1]之间,得到映射后的广义三维Henon超混沌序列{x1,i};

4b)将映射后的广义三维Henon超混沌序列{x1,i}的第i个值乘以128,再加上128,最后进行取整操作,其中i=1,2,...,4N×4N,得到长为4N=1024、宽为4N=1024的修改后的广义三维Henon超混沌序列{x1,i};

4c)将修改后的广义三维Henon超混沌序列{x1,i}按照每行4N=1024个像素排成4N=1024行,得到混沌生成图像矩阵f*(s,t)。

步骤5,选取洛伦兹混沌系统的初值,计算三个洛伦兹混沌序列。

5a)输入洛伦兹混沌的三个初始值x2,0=0、y2,0=2、z2,0=9和输入洛伦兹方程,并确定解区间

5b)采用ode45函数对洛伦兹方程进行求解,得到三个初始的洛伦兹混沌序列{x2,j}、{y2,j}、{z2,j},j=1,2,...,4000+N×N。

步骤6,选取第一个初始的洛伦兹混沌序列{x2,j},舍去该洛伦兹混沌序列{x2,j}的前4000个值,重新对其进行编号,得到洛伦兹混沌序列{x′2,ω},ω=1,2,...,N×N。

步骤7,对洛伦兹混沌序列{x′2,ω}的第ω个值x′2,ω进行mod(round((x′2,ω+0.5)×107),256)操作,得到修改后的洛伦兹混沌序列{x2},其中ω=1,2,...,N×N。

步骤8,将修改后的洛伦兹混沌序列{x″2,ω}转化成8位二值序列,并且截取第ω个元素x″2,ω的第3~6位作为二进制串序列{Bω}的第ω个元素Bω,ω=1,2,...,N×N。

步骤9,将置乱后的图像f1(s,t)在(x,y)处的像素值f1(x,y)插入到混沌生成图像矩阵f*(s,t)中。

9a)将混沌生成图像矩阵f*(s,t)分成N×N个4×4大小的矩阵块,并将位于(x,y)处的矩阵块记为A(x,y),则f*(s,t)=[A(x,y)]N×N

9b)将二进制串序列{Bω}中第ω个元素Bω等分为两段二进制子串bω,1和bω,2,每段二进制子串包含两个二进制数字,得到二进制子串序列{(bω,1,bω,2)},ω=1,2,...,N×N;

9c)将二进制子串bω,1和bω,2转化成十进制整数;

9d)将置乱后的图像f1(s,t)在(x,y)处的像素值f1(x,y)插入到混沌生成图像矩阵f*(s,t)中的矩阵块A(x,y)(b(x-1)×N+y,1+1,b(x-1)×N+y,2+1)处,得到插入后的图像矩阵

步骤10,利用图像信息融合技术缩小插入后的图像矩阵得到最终加密图

g(s,t)。

对插入后图像矩阵中每个矩阵块A(x,y)中的元素值进行求和,并将该和值除以256所得的余数作为最终加密图在(x,y)处的像素值,从而得到最终加密图g(s,t),如图3所示。

本发明的效果可通过以下仿真实验进一步说明:

为了具体说明本发明的优势和特点,下面对该发明和现有技术进行仿真,分析其加密效果。

1.实验环境

本实验的硬件测试平台是:Intel酷睿i5 4210M CPU,主频2.6Ghz,内存8.0GB;软件平台为:Windows 10操作系统和Matlab2015b。仿真图像采用灰度级为256,大小为256×256的lena图。

2.实验内容

为具体说明本发明的优势,主要对现有仅广义三维Henon混沌置乱方法、现有仅洛伦兹混沌置乱方法和现有仅Chen混沌置乱方法3种图像加密方法进行仿真作对比,分别从灰度直方图、置乱程度和密钥灵敏性3个方面进行说明。

实验1,对比本发明方法及三个对比方法的对图2进行加密后的灰度直方图。

数字图像中每一个灰度级与这个灰度级出现的频率间的统计特征用灰度直方图来表示,灰度直方图是图像的一个重要统计特征。

对图2的各个灰度的像素进行统计,得到加密前图像的灰度直方图,如图4所示;分别用本发明方法、现有仅广义三维Henon混沌置乱方法、现有仅洛伦兹混沌置乱方法和现有仅Chen混沌置乱方法对图2进行加密后的图像的各个灰度的像素进行统计,得到加密后的图像的灰度直方图如图5,其中图5(a)为本发明方法加密后的图像的灰度直方图,图5(b)为现有仅广义三维Henon混沌置乱方法加密后的图像的灰度直方图,图5(c)为现有仅洛伦兹混沌置乱方法加密后的图像的灰度直方图,图5(d)为现有仅Chen混沌置乱方法加密后的图像的灰度直方图。

分别将图5(a)、图5(b)、图5(c)、图5(d)与图4进行比较,发现图5(a)中的灰度值均匀分布,与原图的灰度直方图的差异最大,说明本发明方法掩盖了原始图像的统计特性,从而极大的增加了图像对统计分析攻击的抵抗力。

实验2,对比本发明方法及三个对比方法对图2进行加密的加密图的置乱程度。

在图像水平、垂直和对角三个方向上随机选择3000对相邻像素对,代入以下公式,计算得到各图像在不同方向的像素点相关系数:

其中x和y是指图像的两个相邻像素的灰度值,E(x)是x的数学期望的估计值,D(x)是x的方差的估计值,cov(x,y)是x和y的协方差的估计值。

按照上述方法计算图2在不同方向的像素点相关系数,如表1第二列所示;

按照上述方法计算图3在不同方向的像素点相关系数,如表1第六列所示;

按照上述方法分别计算用现有仅广义三维Henon混沌置乱方法加密后的图像、现有仅洛伦兹混沌置乱方法加密后的图像和现有仅Chen混沌置乱方法加密后的图像在不同方向的像素点相关系数,分别如表1第三至五列所示。

表1原图、三个对比方法及本发明方法加密图像的像素点相关系数

从表1可以看出,原始图像在水平、垂直和对角方向的像素点相关系数比较大,表明原始图像的相邻像素点之间的相关性很高;经过四种不同的方法加密之后,水平、垂直和对角三个方向的像素点相关系数值锐减,但是总体还是本发明方法在各个方向的像素点相关系数最低,由此可以看出,本发明方法对图像像素点置乱的比较充分,加密的安全性更高。

实验3,对比本发明方法与三个对比方法的密钥敏感性。

记原始图像为I,加密图像为Q,设通过解密加密图像所得的图像为R,得到经过解密的图像与加密前图像的均方误差:MSE值越大,表明解密后的图像与加密前的图像的信息差别越大,当MSE值在密钥附近微小范围内变化比较明显时,则说明加密方法的密钥敏感性比较高。

为了反映加密方法对于两个密钥参数变化的敏感性,仅对两个参数在密钥附近联合变化的情况进行仿真,计算解密的图像与加密前图像的均方误差MSE,结果如图6,其中:

图6(a)为本发明方法中的两个参数变化得到的解密图像与原始图像的MSE图,即,固定该方法中洛伦兹系统混沌所有初值和广义三维Henon混沌的第三个参数值,只让该方法中的广义三维Henon混沌的前两个参数变化;

图6(b)为现有仅广义三维Henon混沌置乱方法的两个参数变化得到的解密图像与原始图像的MSE图,即固定该方法中的广义三维Henon混沌的第三个参数值,只让前两个参数变化;

图6(c)为现有仅洛伦兹混沌置乱方法的两个参数变化得到的解密图像与原始图像的MSE图,即固定该方法中的洛伦兹混沌的第三个参数值,只让前两个参数变化;

图6(d)为现有仅Chen混沌置乱方法的两个参数变化得到的解密图像与原始图像的MSE图,即固定该方法中的洛伦兹混沌的第三个参数值,只让前两个参数变化。

观察图6(a)、图6(b)、图6(c)和图6(d),发现图6(d)中密钥值附近的MSE值变化较小,说明现有仅Chen混沌置乱方法的密钥敏感性较低;而在图6(a)、图6(b)和图6(c)中,发现密钥值附近的MSE变化很大,说明本发明方法和其余的2种方法都对参数变化比较敏感,因而本发明具有敏感性很强的密钥。

综上,本发明不仅具有很高的置乱程度,同时也有敏感性很强的密钥,所以具有很高的安全性。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1