【《基于Logistic混沌系统的图像加密算法设计案例》4400字】_第1页
【《基于Logistic混沌系统的图像加密算法设计案例》4400字】_第2页
【《基于Logistic混沌系统的图像加密算法设计案例》4400字】_第3页
【《基于Logistic混沌系统的图像加密算法设计案例》4400字】_第4页
【《基于Logistic混沌系统的图像加密算法设计案例》4400字】_第5页
已阅读5页,还剩15页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章绪论i基于Logistic混沌系统的图像加密算法设计案例目录TOC\o"1-3"\h\u30885基于Logistic混沌系统的图像加密算法设计案例 1128911.1混沌图像加密的理论知识 1212101.1.1密码学基础 1296101.1.2混沌理论基础 222441.1.3加密算法的基本模型及设计步骤 3101201.2基于Logistic映射的图像加密算法 489451.3改进后的Logistic混沌加密算法 450641.4算法的安全评价指标 565271.5仿真结果分析 6151921.6安全性能分析 13188831.6.1相邻像素相关性分析 13235081.6.2直方图分析 15251131.6.3密钥敏感性分析 17Logistic混沌模型是一个特别常见的低维混沌系统,研究表明,该混沌系统尤其适合用于通信领域的保密工作。它的定义如下:xk+1混沌域为(0,1),分叉参数μ∈(0,4),状态变量xk∈(0,1)。当μ∈(3.5699456…,4]时系统工作于混沌状态。在混沌状态下,系统产生的序列是不收敛的而且是非周期的。Logistic混沌加密主要有两种可以实现的方式:一种是把原本的像素信息给打乱,另一种是把原本的像素值给替代了。前者就是说只更改像素的方位,而不更改各个像素本身的数值。像素值的替代就是将原始图像的信息扩散到相应的加密图像中,使得原图片信息的破译难度增加了。这种方法比较简单,能够短时内生成所需要的序列,缺点是密钥空间比较小。1.1混沌图像加密的理论知识1.1.1密码学基础密码学就是对信息进行编码从而将信息隐藏起来,这个过程其实也就是本文中提到的“加密处理”,在密码学中,一个密码系统的组成要素如下:(1)明文:未经过任何变换处理的待加密信息,本文中明文指原始图片。(2)密文:经过加密之后的信息。(3)加密算法:将明文变成密文。(4)解密算法:将密文变成明文。(5)密钥:支配加解密过程的可变参数,是整个算法的核心。1.1.2混沌理论基础混沌是一类非周期的、凌乱的十分繁杂的的运动。混沌主要有两种呈现方式,物理层面的和数学层面的[6]。数学层面上又可以分为两种定义方式:一种是以其对初始状态的敏感特征为基础的,一种是以它的非周期特征为基础的。混沌是比较特殊的运动形态,它的主要特征如下:不是绝对的随机过程而是一种伪随机状态;对初值极其敏感;无法对其进行长期预测;混沌只发生在一个有界的范围内;混沌是没有周期而言的;混沌的表达式是确定的。接下来会引入几类比较多见的混沌系统。Henon映射的应用也比较广泛,它的定义如下:xn+1=1+yn+1=xna=[1.07,1.4],b=0.3时,Henon系统表现出混沌状态。Lorenz混沌系统也是比较常见的,它主要有3个方面的长处:一方面是构造比较繁杂,生成的序列会更随机;另外,它处理完输入后会生成许多相应组合分量的输出,这样一来,加密序列的构造就变得越发变通了;还有一个方面是,系统的初始值和参数都可以作为密钥,也就是说,系统可以有6个密钥用以生成加密混沌序列,这样一来,算法的密钥空间就大大提高了。Lorenz混沌系统可以由以下方程组来表示:dzdt=xy−βzdxdy=σy−x(2-5)dydt=ρx−zx−y当δ=10,ρ=28,β=8/3时,系统工作在混沌状态。相图是最直观的用来表示混沌系统的一种手段,它的坐标就表征了系统的状态变量,其中的点就代表某时刻系统所处的状态。相图把系统的运动轨迹都给很好地展示出来了。图1.1Lorenz系统相图1.1.3加密算法的基本模型及设计步骤图像加密的基本模型如下图所示。图1.2图像加密的基本模型虽然不同的方法的具体实现步骤是不一样的,但在设计时有一些普遍遵循的步骤:选择混沌映射要想实现混沌图像加密,首先要考虑的就是如何选取合适的混沌映射,通常是从混沌的安全性能是否能达到你的要求这点来评判的。如果对安全性能的要求不高的话,可以选择低维的混沌序列;相反,如果对安全性能的预期很大的话,就可以用高维的。生成密钥最好是设计多个密钥,因为数量一多,空间就变大了,相应的加密效果也更优秀。算法仿真对算法开展仿真实验,观察是不是能达到你的预期效果。安全性能分析仿真后,要开展性能分析,从而验证该算法是否可行。1.2基于Logistic映射的图像加密算法这是一类比较基础的加密的方法,具体的步骤如下:读取待加密的图片并把它转化为灰度图片;计算原始图像的大小;设置初始值,生成混沌序列并进行改良。用改造之后的序列代替原图像,然后和混沌序列进行异或操作,生成的新图像就叫做加密图像,这样便实现了加密的目的。只要把上述加密图像和混沌序列异或操作,就能重新复原成原来的图。1.3改进后的Logistic混沌加密算法本节要描述了一种改进后的混沌系统的图像加密方案,其中用到的混沌序列是通过我们输入的加密密钥来进行控制的。加解密步骤如果将输入的加密密钥m(1)作为混沌系统的初值并进行(N-1)次迭代,那么就会得到m(2)、m(3)、…,m(n)这么(N-1)个值,此时,我们把这(N-1)个值看成是一个一维的混沌序列。因为Logistic的混沌域为(0,1),所以相应地,m(i)(i=1,2,…,N-1)这一系列值的范围都是在(0,1)之间的,接下来,把这个混沌序列归一化到(0,255)之间。对于一幅大小为a*b的图像,如果要对其进行加密操作的话,第一步就是要产生一个和该图像大小相等的矩阵。令N=a*b,这样的话,只需要迭代(N-1)次就可以得到得到混沌序列m,然后把它变成一个行列数分别为a和b的二维矩阵。接着把它与原始图像实行异或操作,这样一来就可以获得一张全新的图,我们将其称为加密图像。这样便实现了一次图像加密。解密的过程则与加密过程相反。首先,不要更改加密时的参数,然后处理你刚刚得到的图,恢复像素点的值,然后将它的统计信息复原到原图的信息,从而恢复出原图,解密成功。1.4算法的安全评价指标(1)相邻像素相关性分析数字图像的一个特点就是,邻近的像素之间是密切相关的,因此,非法接收者可以用某一个具体点的像素值来推测它周围的其它像素点的值,多次重复这个过程就能渐渐获得该数字图像的大部分信息。为了打破这种相关性,我们必须对其进行加密处理,使得攻击者就算知道了某一点的像素值,也无法获得它周围其它像素的任何信息。比较常用的方法就是打乱原图的像素位置。Ex=1Ni=1Nxicovx,yrxy=cov其中各个参数的意义如下:x,y:相邻像素的灰度值;D(x):图像像素值的均方差;E(x):所选的像素值的均值;rxy:两个相邻像素的相关系数。(2)直方图分析直方图就是用来反映像素出现的频次的。它的竖轴就是用来表征各像素的值所显现出来的次数的,而横轴就是用来表征各像素的值的。hk=公式中各个符号的含义如下:N:图像的总像素的个数;L:图像所包含的像素值的总数目;nk第K个像素值在图像中的个数。加密之前的直方图通常都是不平坦的,通常可以从图里边得出它的某些信息[7]。而加密之后,图像的直方图就会变得比较光滑,而且分布也比较均匀,因而无法推测出其原本的图像信息。(3)密钥敏感性分析密钥的敏感性就是说当它发生变化时,加密算法还能不能正常实现图像的加密解密处理。好的算法必须对密钥的变化高度敏感,哪怕只是一点点的变化,它都没有办法正常运行[8]。1.5仿真结果分析(1)基于Logistic映射的加密算法本次实验选取了3组数据,第1组是大小为1971*1080的数字图像“备选1.jpg”,结果如下。图1.3图像备选1加密第2组是大小为256*256的数字图像“lena.jpg”,结果如下。图1.4图像lena加密第3组是大小为256*256的灰色图像“lena.jpg”,仿真结果如图1.5所示:图1.5灰色图像lena加密第1组实验结果告诉我们,经过加密处理后就没有办法看见原来的图了,而经过解密操作之后原图又显现出来了,这也表示该方案可以用于灰度图像的加解密处理。由第2组的结果可知,原图经过加密后,像素信息就被很好地隐藏了,但是解密之后得到的图像和原始图像是有差别的,原来的彩色图像经过解密处理之后变成了灰度图像,这就意味着它无法用于彩色图像的加解密。第3组的仿真结果表明,原来的灰色图像经过加密操作后,原图像信息成功被隐藏了,而经过解密操作之后,原始图像的信息又被复原了。由这3组结果中可以得出一个结论,该算法比较适合宽度和高度不一样的灰度图像。(2)改进后的Logistic加密算法改进后的算法是通过图形用户界面(GraphicalUserInterface,GUI)来模拟图像的加解密处理过程的,GUI可以很方便地实现人机交互操作,也会使得图像的加解密过程更加直观。第1组是大小为256*256的图像“lena.jpg”,处理之后的效果如下。图1.6图像lena加密可以明显地看到,加密之后一点也看不出图像的信息,而解密之后又完好地还原了原来的图像,这就表示,它可以用于彩色图像的加密。如果输入的解密密码和加密密码不一样,则无法获取原始图像,这也是保护图像信息安全的一种手段。图1.7是解密未成功的情况。1.7解密未成功第2组是大小为1559×2338的灰色图像“gray.jpg”,仿真效果如下。图1.8图像gray加密同样,加密后,原图的信息被很好得隐藏了;而当两次密码不一样的时候,就没有办法得到原图了。从上面2组结果可以知道,它既适合灰度图像又适合彩色图像的加解密处理。1.6安全性能分析仿真之后还要分析它抵抗外部攻击的能力。1.6.1相邻像素相关性分析(1)基于Logistic映射的加密算法图1.9加密前后的相邻像素相关性显然,原本的像素点比较集中,加密后像素的布局比原来分散了,也就是相关性降低了。(2)改进后的Logistic加密算法图1.10加密前后的相邻像素相关性从中可以知道,原图的相邻像素相关性是很强的,像素点基本都是排列在一些特定的区域,如果知道了某些点的像素值,那么它四周的信息就会很容易被推理出来,所以图像信息其实是没有什么安全保障的。而经过处理后,像素点的分布就变得分散了,即使某些点的信息被泄露了,非法窃取者也很难从那些点的信息推测出其它位置的像素信息。1.6.2直方图分析有了直方图我们就可以简单直观地看出原图的统计相关性[9]。直方图分布均匀表明图不容易泄露,直方图分布不均匀则表明图容易泄露。为了试验各种方法是不是可行的,接下来要对比加密前后直方图的分布情况。基于Logistic映射的加密算法图1.11加密前后图像的直方图不难发现,原来的直方图是一种非常不均匀的状态,像素信息大致分布在固定区域,使得图像信息容易被破译,而经过加密处理之后,直方图就变得比较平缓了,也就是说,它把原来的信息分布给遮盖起来了,从而保障了图的安全。(2)改进后的Logistic加密算法图1.12加密前后图像的直方图原来的直方图轮廓比较尖锐,所以有心人可以借着像素信息之间的联系,描绘出原来的大概轮廓;而加密之后,直方图就变得平坦了,原来的像素分布都被打乱了,这样图像就不容易遭到泄露,从而保障了它的安全。1.6.3密钥敏感性分析(1)基于Logistic映射的加密算法2个混沌序列的初值分别为u1=4,x1(1)=0.2;u2=4,x2(1)=0.7;现为验证密钥的敏感性,将初值更改成u1=3.9,x1(1)=0.3;u2=3.9,x2(1)=0.6,然后观察算法能否正常运行。结果如图1.13所示。图1.1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论