基于Logistic混沌序列的图像加密技术研究

更新时间:2023-12-06 07:09:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科生 学士学位论文

题 目:基于logistic混沌序列的图像加密技

术研究

学院(所、中心) 专业名称

2010年 5月

摘 要

本毕业设计主要研究基于Logistic映射的混沌图像加密技术。将混喜好引入到数字图像加密技术中,充分利用了混沌信号的不可预测性和易于实现等特征。

混沌理论是一门新兴的学科,却与相对论和量子理论一样,被誉为20世纪中物理科学三次大革命之一。它启发了人们从一个新的角度去观察、理解这个世界。同时,它让学者们拥有了一个新的理念、新的思维去分析理解问题。混沌序列具有容易生成,对初始条件敏感以及具有白噪声的统计特性等特点,并利用其进行数字图象加密,得到了较好的结果。

混沌加密技术已广泛应用于网络通讯,信息安全等领域。本文首先利用理论分析和数值分析的方法分别对Logistic系统进行了动力学分析。理论分析和计算机仿真完全相符。然后分析了Logistic混沌映射的加密算法原理,提出了基于该算法的加密方法,秉承算法的安全性,效率等方面进行了性能分析。最后采用Matlab开发工具完成该混沌加密算法的设计,用该算法对实例进行加密仿真。

关键词:Logistic映射;混沌;图像加密;混沌图像加密;混沌序列;序列密码

- 1 -

ABSTRACT

The graduate design researches on the design of digital image encryption technology based on Chaotic Logistics. Chaos will signal the introduction of encryption technology to digital images,take full advantage of the chaotic signal can be unpredictable and easy to implement,and other features.

Chaotic encryption technology has been widely used in network communications, information security and other fields. This paper first use of theoretical analysis and numerical analysis methods were logistic system of super-model for the basic dynamic analysis. Theoretical analysis and computer simulation are completely in line. Than it analyses the encryption algorithm principle based on the logistic chaos mapping, proposes a kind of encryption, and from aspects of algorithm security, efficiency and so on, gives the performance analysis, Finally, it uses the Matlab development kit to complete this design, and carries on the encryption simulation with this algorithm targeting on a example.

Key words: logistic mapping; Chaos; image encryption; chaos

image encryption; chaotic sequence; sequence password

- 2 -

摘 要 .................................................................................................................. - 1 - ABSTRACT ....................................................................................................... - 2 - 第1章 绪 论 .................................................................................................... - 1 -

1.1 研究背景和意义 ................................................................................ - 1 - 1.2 图像压缩技术简介 ............................................................................ - 1 - 1.3 图像加密技术简介 ............................................................................ - 2 - 第2章 混沌序列的产生 .................................................................................. - 4 -

2.1 混沌理论及加密原理 ........................................................................ - 4 - 2.2 Logistis混沌序列的系统分析 ....................................................... - 5 - 2.3 Logistis混沌序列的产生方式 ............................................................ - 7 - 2.4 性能分析 ..................................................................................................9 本章小结 ....................................................................................................... 11 第3章 基于混沌序列的图像加密 .....................................................................12

3.1 图像的颜色模式 ....................................................................................12 3.2 灰度图像加密 ........................................................................................13 3.3 彩色图像加密 ........................................................................................19 本章小结 .......................................................................................................24 第4章 总结及研究展望 .....................................................................................25

4.1小结 .........................................................................................................25 4.2研究展望 .................................................................................................25 致 谢 .....................................................................................................................26 参考文献 ...............................................................................................................27

- 3 -

第1章 绪 论

1.1 研究背景和意义

随着Internet技术的飞速发展,为信息的网上传播开辟了道路,很多信息都可以迅速方便地在网上发布和传输,但这同时也带来了信息安全的隐患问题。具统计,全世界几乎每 20 秒钟就有一起黑客入侵事件发生。现在,信息安全技术不但关系到个人通信的隐私问题,关系到一个企业的商业机密和企业的生存问题(仅美国每年由于信息安全问题所造成的经济损失就超过100亿美元),而且也关系到一个国家的安全问题。因此,信息安全技术正越来越受到全社会的普遍关注。

由于图像信息形象、生动,因而被人类广为利用,成为人类表达信息的重要手段之一,现在图像数据的拥有者可以在 Internet上发布和拍卖他所拥有的图像数据,这种方式不但方便快捷,不受地域限制,而且可以为数据拥有者节约大量的费用。但这同时也为不法分子利用网络获取未授权数据提供了渠道图像发行者为了保护自身的利益,就需要可靠的图像数据加密技术,而且在某些情况下,对于某些图像数据必须要采用可靠的加密技术,例如,医院里病人的病例数据(其中包括病人的照片)根据法律规定就必须在加密之后才能在网上传播,这方面的应用在远程医疗系统中是比较常见的。

1.2 图像压缩技术简介

图像是使网页精彩的重要因素之一,但是由于网络带宽等客观因素的影响,太大的图片显示很慢,不利于网络的传输,所以就要用到图像压缩技术,在尽量不影响图像质量的前提下,最大压缩图像的大小。目前最主要的技术就是JPEG2000。

JPEG全名为Joint Photographic Experts Group,它是一个在国际标准组织(ISO)下从事静态图像压缩标准制定的委员会。它制定出了第一套国标静态图像压缩标准:ISO 10918-1就是我们俗称的JPEG了。由於JPEG优良的品质,使得它在短短的几年内就获得极大的成功,目前网站上百分之八十的图像都是采用JPEG的压缩标准。然而,随著多媒体应用领域的激增,传统JPEG压缩技术已无法满足人们对多媒体图像资料的要求。因此,更高压缩率以及更多新功能的新一代静态图像压缩技术JPEG 2000就诞生了。JPEG 2000正式名称为ISO 15444,同样是由JPEG 组织负责制定。

- 1 -

我们在使用logistic混沌系统时,可以先让系统迭代一定次数之后,再使用生成的值,这样可以更好的掩盖原始的情况,是雪崩效应扩大,这样可以具有更好的安全特性。

最后我们精确测试一下logistic的随机分布特性,一个号的伪随机序列应该有比较好的平均分布,。我们对初值为0.874的logistic混沌映射进行500次的迭代后对其值进行统计,分布情况如下表所示:

分布区间 0.8-1.0 0.6-0.8 0.4-0.6 0.2-0.4 0.0-0.2 0.2-0.0(以下负值) 个数 103 45 51 35 27 32 所占百分比 21% 9% 10.2% 7% 5.4% 6.4% 总数 47.2% 52.8% 0.4-0.2 0.6-0.4 0.8-0.6 1.0-0.8 42 36 41 88 8.4% 7.2% 8.2% 17.6% 表2-1 logistic映射500次迭代统计

从上表中我们可以看出,logistic映射的迭代序列的分布基本是均匀的,对于其他的初始值也应有类似的结构。而且从表中可以看出,分布有两头大中间小的趋势。虽然有这种趋势,但在正数负数的分布上是十分的平衡的,对于下面将要进行的0,1判决产生比特混沌序列是十分有利的,同时也可以基于这样的分布平衡性发展出更好的加密序列。

2.3 Logistis混沌序列的产生方式

比特混沌序列: 首先按照Logistic映射:

2xn?1?f?xn??1?2xn;xn?[?1,1] (2-2)

设定一个初值x0,然后按照上式方程不断迭代,产生长度为

n的一个序列

- 7 -

X??x0,x1,x2?xn?,其中xn?[?1,1],n?1,2,3? 然后再根据:

?1, xn?0;y?? n (2

0, x?0n?-3)

进行0,1判决,最后得到Y??y0,y1,y2?yn?,既为我们所需要的比特混沌序列。

实数混沌序列:

实数混沌序列是在比特混沌序列的基础上转换得来的。由于我们在对图像进行加密的时候是对图像的每个象素值的灰度值做运算,而每个象素的灰度值是从0~255,既0~28?1,所以在转换的时候采取每八位进行转换,把0,1序列变成0~255的实数序列,长度变为比特序列的1/8。

过程如下图:

图2-4 实数混沌序列的转换过程

产生比特混沌序列的程序为:

x=zeros(1,a*b*8); X=zeros(1,a*b*8); X1=zeros(a,b*8); x(1,1)=0.618; for k=1:a*b*8 X(1,k)=x(1,k); x(1,k+1)=1-2*x(k)^2; end

for i=1:a*b*8 if X(i)>0 X(i)=1; elseif X(i)==0

X(i)=1; else X(i)=0; end end X1(:)=X;

将产生的比特混沌序列转换为实数序列的程序为:

A=zeros(a,b); A=im2uint8(A);

- 8 -

for i=1:a for j=1:b if j ==1 for k=0:7

A(i,j)=A(i,j)+B(i,k+1)*2^(7-k);

end else

for k=0:7

A(i,j)=A(i,j)+B(i,8*j+k-7)*2^(7-k);

end end end end A

2.4 性能分析

对图像和视频采用混沌序列进行加密,我们是基于混沌序列较好的随机性来实现的,而序列的随机性又体现在相互序列的相关性上,当序列的自相关性很强,互相关性又很若的时候,我们就可以说这个序列具有很好的随机性。下面对一个实际的混沌序列进行时间序列图和相关性进行分析。

初值0.947 迭代次数100次的logistic时间序列图:

图2-5 logistic时间序列图

通过上图可以看到,对于logistic混沌序列,在时间上也是随机分布的,这对于能否0,1判决是至关重要的。由此我们可以得出我们所选择的logistic序列无论在时间,还是空间上都是随机均匀分布的。

除了直接画出混沌序列的时间,空间序列图外,还可以变换混沌序列的形式从直观上来观察混沌序列的随机性。将生成的比特混沌序列转化成灰度矩阵按照片的格式

9

存储,然后显示成二维图像。同时为对比更清楚我们拿一副有规律的图像作为参考。

图2-6 渐变图像

图2-7 混沌序列形成图像

图2-8 渐变图像的灰度直方图

10

图2-9 混沌序列生成图像的灰度直方图

渐变图像由于其相互像素之间灰度值变化很小,基本连续,在直方图中,其特性显得非常有序,灰度值是连续变化的。而相反混沌序列由于是无规则的,不论是从原图,还是灰度直方图上,都可以看出其杂乱无章的特性。有上面的分析可以看出混沌序列是具有很好的随机性的。

本章小结

由于混沌系统对现实世界做到了一个相对接近的描述,混沌学的发展也越来越快。它并不是一门独立的科学,而是与其他科学相互促进,相互联系。形成很多交叉学科,比如混沌数学,混沌经济学等。对社会的贡献已经不仅仅局限于理论和研究上的意义,

慢慢的在实际生长中一件开始有它的影子了。

11

第3章 基于混沌序列的图像加密

3.1 图像的颜色模式

1.灰度图像:

对于灰度图像来说,每个象素点只有一个表示明暗情况的灰度值。一般来说,将从白到黑分成256个等级,从0~255,0表示黑色,255表示白色,中间的值越靠近0就表示越接近黑色,反之亦然。当然我们可以在黑和白之间划分更多的等级,以区分得更精确,但对于256个等级的灰度值来说已经能够满足人眼的区分能力,所以也就没有将它更多的分级。作为计算机来说,当我们要存取256个状态的时候,计算机需要用一个字节,即8位来存储每个象素点的灰度信息。这也就是通常所说的8位灰度图。

2.彩色图像:

彩色图像的图像模式相比灰度图像来说要多得多,除了最常见的RGB颜色模式外还有Lab颜色模式、索引颜色模式、CMYK颜色模式等等。

其中索引颜色模式最多只使用256种颜色,在网页上使用比较多的GIF格式的图片用的就是这种颜色模式。CMYK颜色模式主要是用于打印输出图像,它的颜色方式与RGB正好相反,它是一个减色系统。

对于加密,我们此处只对RGB颜色模式和Lab颜色模式做讨论。 (1).RGB颜色模式:

RGB颜色模式是我们最常见的,这是很多图形软件和数学运算软件使用的最主要模式。它是一个三维空间,每个象素点的颜色信息由红色(red)、绿色(green)、蓝色(blue)构成,而每种颜色都是从0~255的值构成,它表示在该点处各种颜色的多少。比如一个点的颜色信息为(128,30,200),它表示该点由相对中性的红色、比较深的绿色以及比较淡的蓝色叠加而成。这样的话,每种颜色用8位表示,则三种颜色就构成了24位的色彩,这也就是平时计算机中用到的24位真彩色。

(2).Lab颜色模式:

它与RGB颜色模式相同也是一个三维空间,只是它保存信息与RGB不同,它保存了一个象素点的L(亮度值)、a(由绿色到红色)以及b(由蓝色到黄色)三个信息。简单的说如果RGB是用空间直角坐标系来表示,而Lab则是用球坐标系来表示。它们之间可以进行互算。

12

3.2 灰度图像加密

对灰度图像进行基于混沌序列的加密,我们采用两种方法:

1.按位异或加密解密

例如:现在有一图像,文件名为shiyan.jpg,我们将它的灰度值在MATLAB中使用imread函数读出存入到变量I中。(如果该图为灰度图,则I是一个二维矩阵,如果为彩色图像,则I是一个三维矩阵,三维矩阵我们可以将它分成三个二维矩阵处理,方法与灰度图像的一样。)然后将矩阵I转换成为一个数组以便后面的计算(此处假设图像有n个象素点)。

I??a1,a2,a3?an?;n?Z (3-1)

?然后将I中的每个值转换成8位二进制数存到变量L中,L的元素个数为I的8倍。

L??l11,l12,l13?l18,l21?lnj?;n?Z,j?1,2?8 (3-2)

?然后将生成的混沌序列Z与L按位异或。 异或示意图如下:

图像象素灰度值L 1 0 1 1 1 0 1 混

0 1 0 0 0 1 1 沌 序列 1 1 1 1 1 1 异或运算后被加密的灰度值Y 图3-1 异或加密示意图

这样L就被加密了。 加密流程图如下:

Z 13

读取待加密图像灰度值存产生混沌序列Z 将变量I中的灰度值进行8位二进制转换,将L与Z进行按位异或运算,结果保存到Y 将Y序列的每8位转换成十进制灰度值,存储为矩阵 图像被加密

图3-2 异或加密流程图

加密程序如下:

M=zeros(a,8*b); for i=1:a for j=1:8*b

M(i,j)=xor(B(i,j),X1(i,j));

end end

M1=zeros(a,b); M1=im2uint8(M1); for i=1:a for j=1:b if j ==1 for k=0:7

M1(i,j)=M1(i,j)+M(i,k+1)*2^(7-k);

end else

for k=0:7

M1(i,j)=M1(i,j)+M(i,8*j+k-7)*2^(7-k);

end end end end

subplot(1,3,2) imshow(M1)

14

下面选一副灰度图像用异或加密法加密:

图3-3异或加密后的图像

对比源图像和加密后的图像,从直观上可以肯定的是图像被加密了,无法从加密后的图像上找出源图像的影子。下面用直方图来分析加密的情况。

图3-4 源图像直方图

15

图3-5 异或加密后的度直方图

从直方图可以看出,源图像是一幅明亮对比比较鲜明的图像,其象素的主要象素值处于比较亮的地方,接近黑色的象素点比较少,从图上也可以清楚的看到黑色部分所占比例比较小。加密后的图像的直方图显然是一种随机状态,在0~255之间没有特别明显的区别,灰度值的分布非常的均匀。

对图像解密,主要就是将加密时候的算法做逆运算,这样就可以用相同的混沌序列还原图像。由于异或运算的逆运算就是异或,所以加密和加密的过程是相同的。

解密流程图如下:

16

本文来源:https://www.bwwdw.com/article/o8rt.html

Top