(完整版)基于MATLAB的混沌序列图像加密程序

合集下载

一种基于混沌序列的数字图像加密算法

一种基于混沌序列的数字图像加密算法

一种基于混沌序列的数字图像加密算法周焕芹(渭南师范学院数学与信息科学系,陕西渭南714000)摘 要:基于混沌序列给出了一种图像加密算法.借助Logistic混沌动力学系统过程既非周期又不收敛,且对初始条件敏感性,生成混沌矩阵,对原图像进行融合操作,实现了对图像的加密过程.实验结果证明,算法简单易行,安全性好.关键词:数字图像;混沌序列;图像加密;迭代;置乱中图分类号T N911.73 文献标志码:A 文章编号:1009—5128(2008)02—0011—04收稿日期:2007—05—31基金项目:陕西省基础教育科研“十一五”规划课题(SJJY B06297);渭南师范学院科研基金资助项目(06YKF011);渭南师范学院教学改革研究项目(JG200712)作者简介:周焕芹(1962—),女,陕西澄城人,渭南师范学院数学与信息科学系副教授20世纪60年代人们发现了一种特殊的自然现象———混沌(chaos),混沌是一种非线性动力学规律控制的行为,表现为对初始值和系统参数的敏感性、白噪声的统计特性和混沌序列的遍历特性,其吸引子的维数是分维,有十分复杂的分形结构,具有不可预测性.由于混沌序列有如此优良的密码学特性,混沌密码学成为现代密码学的重要研究内容.最早将离散混沌动力学系统应用于加密算法的是M atthe w s[1],1990年,他给出了一种一维的混沌映射.该映射根据初始条件产生的具有混沌特性的伪随机序列可以直接应用于一次一密的加密算法中,但是该混沌映射在使用计算机实现时会退化成周期序列,而且该序列的周期一般较小.1990年,Habutsu等人也给出了一种基于线性的Tent映射的混沌加密系统[2],该方法保留了混沌系统对于初始条件的敏感性.1994年,B iance利用Logistic映射产生实数序列,应用范围较广[1-4].随着网络技术的发展,大量个人和公众信息在网络上传播.信息的安全问题成为人们关注的热点,而信息安全中图像安全是众所关心的.对于图像信息,传统的保密学尚缺少足够的研究.随着计算机技术与数字图像处理技术的发展,对此已有一些成果[6].近年来,相继召开了关于数据加密的国际学术会议,图像信息隐蔽问题为其重要议题之一,且有关的论文以数字水印技术为主.数字图像置乱技术,可以看做数字图像加密的一种途径,也可以用做数字图像隐藏、数字水印图像植入、数值计算恢复方法和数字图像分存的预处理和后处理过程.作为信息隐藏的基础性工作,置乱技术已经取得了较大的发展,提出了很多有效的方法如:基于A rnold变换,F ASS曲线,分形技术,幻方,正交拉丁方,骑士巡游,仿射变换,原根,Gray码变换的置乱方法[7].本文应用离散混沌动力系统设计了一种图像加密/解密算法.该方法的特点是:无论从加密还是解密算法的设计都是由不同的动力系统提供的.本文依赖于随机密钥的非线性迭代完成图像的像素融合,其中所用的子密钥由离散混沌系统产生.分析和仿真结果表明,经过这样的融合,算法具有良好的安全性及鲁棒性.1 算法原理由混沌矩阵对图像置乱.从构成图像的像素角度考虑,一幅图像大小为M×N,具有256级灰度的图像,设图像为I m age,对应于像素点(i,j)的灰度值记为I m age(i,j),其中1≤i,j≤L,Endi m age(i,j)为(i,j)坐标处融合操作后图像的像素灰度值,即要设计映射f,使得 f:I m age(i,j)→End i m age(i,j)(1)为了使得融合后的像素灰度值Endi m age(i,j)具有不可预测性,本文采用离散混沌映射生成离散混沌矩阵Keyi m age(i,j)来达到这个目的.生成Keyi m age(i,j)的方法如下:采用目前广泛研究的Logistic映射构造混沌序列.混沌系统表述为 αk+1=μ・αk・(1-αk),k=0,1,2, (2)2008年3月第23卷第2期 渭南师范学院学报Journal of W einan Teachers UniversityM arch2008Vol.23 No.2其中,3.569946…≤μ≤4,α0∈(0,1).这样,Logistic映射可以定义在(0,1)上.给定初值μ和α,经过N-1次混沌迭代运算得到混沌实值序列α1,α2,…,αN,通过排序变换将这N个值由小到大排序,生成β1,β2,…,βN,并确定αi在β1,β2,…,βN中的位置编号,形成地址集合G1={g1,g2,…,g N,},反复操作M次,便生成混沌矩阵Keyi m age: Keyi m age=G1G2…G M(3)则置乱操作可表示为:Endi m age(i,j)=γi,,j×(I m age(i,j)-Keyi m age(i,j))+Keyi m age(i,j))mod256(4)其中γi,,j为由混沌系统生成的融合因子,这里采用Logistic映射生成(同(2)式).对图像的解密可由下式得到: I m age(i,j)=1γi,,j×(Endi m age(i,j)-Keyi m age(i,j))+Keyi m age(i,,j))mod256(5)2 图像加密解密算法由第一部分我们可以得到具体的加密解密算法如下:算法1:加密算法Step1.输入原图像I m age和迭代次数ti m es;Step2.输入密钥:μ1和α0,由式(2)和(3)生成混沌矩阵Keyi m age;Step3.输入密钥:μ2和γ0,由式(2)生成融合因子γi,,j;Step4.利用式(4)对原图象进行融合置乱,得到置乱图像Endi m age.算法2:解密算法Step1.输入置乱图像Endi m age和迭代次数ti m es;Step2.输入密钥:μ1和α0,由式(2)和(3)生成混沌矩阵Keyi m age;Step31输入密钥:μ2和γ0,由式(2)生成融合因子γi,,j;Step41利用式(5)对图像进行置乱恢复.3 算法分析从结构上分析,整个算法主要思想是利用Logistic混沌映射生成混沌矩阵,利用Logistic映射生成融合因子对原图像进行融合操作.基于混沌序列的数字图像加密算法,其安全性主要依赖于:(1)所选用的混沌序列的安全性:从式(3)可知,当Endi m age不可知,则要通过Endi m age直接解出I m age是不可能的,而当图像较大时,相应生成的混沌矩阵也会很大,采用穷举法进行破解也是困难的,因为其时间复杂度为O(M×N×256);(2)由Lo2 gistic映射生成融合因子使得破解更为困难.同时,由于混沌系统是拓扑可迁的,所以,初始时很小的误差会很快传递到整个吸引域相空间上,这一特点也增加了破译的难度.此外,加密者可以自由随意地选择密钥,这样的选择可以使得算法有着几乎一次一密特性的安全性.另外本文给出的算法密钥较多,比如:迭代次数ti m es,混沌序列初值α,μ1,γ0,μ2等等,使得破解更为困难,另外也可以减少密钥个数,比如在上述密钥中固定可别参数可以减少密钥,使得算法具有更高的灵活性,根据实际情况应用起来更为方便.4 数值实验根据以上算法,采用Logistic混沌序列进行图像融合.如图1所示:选择Lena图像(256×256)作为仿真图像,选择密钥分别为:μ1=4,α0=0.7,μ2=4,γ0=0.6,ti m es=3.・21・ 周焕芹:一种基于混沌序列的数字图像加密算法 第23卷图1 利用本文给出的算法的加密图像和解密图像从图1可以看出,算法能够有效的加密和解密原图像数据.图2是由错误密钥的解密图像(其中仅改变一个密钥μ1=4,ti m es =3,μ2=4,γ0=0.6,α0=0.7000000000000001).由图2可以看出即使密钥有很小的差异也无法解密出原图像,使用枚举搜索很难对加密图像进行解密.表明本文算法具有较好的安全性.5 结 论本文给出了一种图像加密算法,该算法具有较好的加密效果.算法思想为:首先是利用Logistic 混沌映射生成混沌矩阵,然后利用Logistic 映射生成融合因子对原图像进行融合操作,从而得到置乱图象.该算法的优点是密钥较多,使得用穷举发破解困难,另外本文在生成混沌矩阵和融合因子时均采用Logistic 映射,也可以用其它混沌映射增加加密效果和安全性.实验数据表明,本文算法具有很好的加密效果.・31・2008年第2期 渭南师范学院学报 图2 错误密钥的解密图像参考文献:[1]R A J M atthe w s .O n the derivation of a chaotic encryption algorithm [J ].C ryptologia .1989,(4):29—42.[2]T Habutsu,Y N ishio,I Sasase,et al .A secret cryptosyste m by iterating a chaotic m ap [A ].A dvances in C ryptology EU 2RCRYPT ’91[C ].B erlin:Springer -V erlag .1991,127—140.[3]M.E .B ianco,G .L.M ayhe w.H igh Speed Encryption Syste m and M ethod [J ].US Patent,1994,15(5):365—588.[4]Zhang Han,W ang X iufeng .A ne w i m age encryption algorithm based on chaos syste m [A ].International conference on robotic,intelligent syste m s and signals processing .Changsha,China .2003,778—782.[5]D ang P P,Chau P M.I m age encryption for secure Internet m ulti m edia applications [J ].IEEE T ransactions on Consum er Elec 2tronics,2000,46(8):395—403.[6]Yonghong Zhang,B aosheng Kang,Xuefeng Zhang .I m age Encryption A lgorithm B ased on Chaotic Sequence [C ].The 16THInternational Conference on A rtificial R eality and Telexistence,2006,221—223.[7]丁玮,齐东旭.数字图像变换及信息隐藏与伪装[J ].计算机学报,1998,21(9):838—843.[责任编辑 舒尚奇]A D i g it a l Image Encrypti on A lgor ith m Ba sed on Chaos SequencesZHOU Huan 2qin(Depart m ent of Mathe matics and I nf or mati on Science,W einan Teachers University,W einan 714000,China )Abstract:An algorith m of digital i m age encryp ti on is p resented .Based on chaos sequences,with the hel p of Logistic chaos dy 2na m ics,syste matic p r ocess is non 2peri od,non 2convergence and sensitivity t o the initial conditi ons,p r oducing the real chaos matrix t o substituti on the p ixel .W e get an algorith m for encryp ti on and decryp ti on a digital i m age .The nu merical experi m entati ons show that the hiding algorith m is efficient and safety .Key words:digital i m age;chaos sequence;i m age encryp ti on;iterative;scra mbling ・41・ 周焕芹:一种基于混沌序列的数字图像加密算法 第23卷。

一种基于复合混沌序列的图像加密方法

一种基于复合混沌序列的图像加密方法

一种基于复合混沌序列的图像加密方法
基于复合混沌序列的图像加密方法是一种高效的数字图像加密方法,它可以有效地保护传输或存储的数字图像。

该加密方法主要是在杂质密码理论中引入复合混沌序列,而不是单纯地使用传统的密码解密机制来保护数字图像。

复合混沌序列是一种复合的随机数序列,是一种仿真混沌系统的结果。

它的混沌特性能够为加密技术提供极其有效的加密机制,包括一种新颖的加密技术——“M-R码”,它可以将一个复合混沌序列映射到一个M-R码,这种方法可以替代传统密码解密机制,更有效地保护数字图像。

基于复合混沌序列的图像加密方法同时利用了像素值混沌映射和混沌表示实现加密。

像素值混沌映射可以完全替代传统的密码解密机制,这样可以有效地实现加密任务。

混沌表示的加密算法使用复合混沌序列的性质,对图像的连续像素数据进行打乱,以此产生一个混沌表示的加密图像。

最后,基于复合混沌序列的图像加密方法采用了一种新的“门限混沌码”方法。

这种方法使用门限混沌码将已加密的图像像素值重新组合成一个新的加密图像,这样可以在更大程度上混沌化图像,并避免有水印痕迹可见。

总之,基于复合混沌序列的图像加密方法是一种高效且安全的数字图像加密方法,它能够有效保护数字图像的安全,使得攻击者无法获得足够的信息来破解加密图像。

混沌与图像合成相结合的实时图像加密算法

混沌与图像合成相结合的实时图像加密算法

混沌与图像合成相结合的实时图像加密算法作者:刘颖刘章来源:《中国新通信》2014年第02期【摘要】本文基于matlab平台利用循环程序从视频中读取各帧图像,将置乱后图像与私钥图像进行合成,应用一维logistic映射产生的混沌置乱序列,对合成图像进行行、列置乱,从而实现实时图像加密。

【关键词】混沌 matlab logistic映射私钥实时图像在信息化时代,保证数字图像的交互安全意义重大。

在此背景之下,图像加密技术发展迅速,混沌加密是当前图像加密技术的主流。

低维混沌系统结构简单、效率较高,抗穷举法攻击较差,算法安全性较低。

为扩大密钥空间和增加混沌序列随机性,人们设计了超混沌系统、级联混沌系统、复合混沌等复杂的系统[1],这些算法虽大大提高了安全性但往往耗时较多,不适用于实时图像的处理。

本文提出一种将混沌与图像合成相结合的新型加密算法,加密算法的程序开发平台为Matlab7.0,涉及计算机模拟环境为 Windows 7/XP/2003/ 2010 。

加密算法所涉及的实时图像取自于avi视频,加密中的混沌序列源于logistic映射。

Logistic方程为xn+1=1-μx,其中μ∈(0,2)、xn∈[-1,1],随着控制参数由小到大逐渐增长就可以演示倍周期分岔走向混沌的过程。

logistic映射在混沌区,具有伪随机性、初值敏感性、遍历性及收敛性[2]。

由此可见,给定初始值xn及μ,由logistic映射生成混沌序列,即可对图像进行初步置乱。

本文在此基础上构造出既满足图像安全性又不给传输和存取带来过大延迟的加密程序。

其基本思想是引入一张图像作为加密、解密者共享的密钥图像,将密钥图像处理后与待加密图像合成进行logistic映射置乱加密,从而得到加密图像。

一张图像所含有的信息量庞大,这就大大增加了密钥空间,并且改变了原图像的像素值,确保了图像加密的安全性。

密钥图像要与待加密图像进行合成,如果密钥图像偏大将耗费不必要的计算量,密钥偏小又起不到隐藏待加密图像的目的。

数字图像加密算法的研究与实现

数字图像加密算法的研究与实现

数字图像加密算法的研究与实现摘要数字图像加密是进行数字图像信息保密的一种手段。

随着信息技术的飞速发展,数字图像在各个领域中有着极为广泛的运用,那么数字图像中所包含的信息安全性应受到重视。

数字图像本身具有数据量较大的特点,用传统的的加密方法往往无法达到加密的要求,许多学者对数字图像的信息安全性进行了多次研究并提出了许多强而有效的算法。

本文研究并实现了一种基于混沌序列置乱的数字图像加密算法,通过密钥产生混沌序列,将该混沌序列进行逻辑排序,并以此排列方法对数字图像进行加密。

该算法隐私性较强,在数字图像的加密和解密过程中均需要密钥的参与,因此不知道密钥的用户无法恢复数字图像,具有良好的保密性。

关键词:数字图像混沌加密数据隐藏AbstractDigital image encryption algorithm is a method about keeping the information of digital image secret.With the quick development of informational technology,the digital image has been utilized in many areas,so the security of message that digital images carry should be paid attention.Particularly ,digital images have the characteristic of a large amount of data,it can not meet demands about encryption that encrypting data in traditional way,which leads to a lot of scholars have spent much time and energy on researching the security about digital image information and illustrated many effective algorithm.This article discuss and illustrate a kind of digital image encryption algorithm based on chaotic array disruption,producing chaotic array according to the key,then logically arranging existed chaotic array,finally encrypt digital image with same logic.It shows better privacy.This process requires keys participating in both encryption and deciphering,so anyone does not know the key who can not rebuild the original image.Key words:digital image chaotic encryption hiding data目录摘要 (I)Abstract (II)绪论 (1)1数字图像加密的基础理论 (4)1.1密码学的介绍 (4)1.2 图像加密技术 (4)1.3数字图像的置乱 (5)1.4混沌加密简介 (5)1.5混沌加密安全性分析 (6)2开发工具简介 (8)3基于混沌的数字图像加密算法 (11)3.1数字图像混沌加密算法总体设计 (11)3.2 数字图像混沌加密算法 (11)3.3数字图像混沌解密算法 (13)4实验仿真与结果 (14)4.1编程实现相关函数及其方法 (14)4.2仿真结果 (14)4.2.1非彩色图像实验仿真 (14)4.2.2彩色图像实验仿真 (16)结论 (18)附录1混沌加密与混沌解密算法代码 (19)绪论计算机和网络的飞速发展为多媒体数字产品的使用、传播提供了极其便利的途径,然而由于数字产品具有极易被复制和修改的特性,使得数字作品的信息安全问题和版权保护成为迫切需要解决的难题。

基于混沌系统的图像加密算法研究

基于混沌系统的图像加密算法研究

基于混沌系统的图像加密算法研究随着图像技术的发展,图像加密技术已经成为了一个不可避免的问题。

现如今,在数字化信息传输中,尤其是在网络传输中,保证信息的安全性是非常重要的。

而其中,图像加密技术是保护图像信息安全的重要手段之一。

然而,传统的图像加密算法效果不佳,易受到攻击,因此研究基于混沌系统的图像加密算法显得尤为重要。

一、混沌系统的基本原理与应用混沌系统是一种复杂的动态系统,具有分形性、敏感性依赖性和随机性等特征。

其中,分形性表现为系统的自相似性,敏感依赖性表现为系统对初始条件和参数的敏感度非常高,随机性表现为系统长期的运动是不可预测的,因此,混沌系统的引入能够提高加密算法的随机性,保证信息传输的安全性。

混沌系统在信息安全中的应用有很多,除了图像加密算法,还有数据加密算法、语音加密算法等等,都可以利用混沌系统的特性提高其安全性。

二、基于混沌系统的图像加密算法的特点基于混沌系统的图像加密算法有以下特点:1、加密过程快速:混沌系统的计算具有快速性能,能够有效提高加密算法的速度。

2、加密效果好:通过混沌系统复杂的运动轨迹,可以使得图像加密后的像素点分布更加随机,增强了加密的随机性和不可预测性,保证信息的安全性。

3、加密系统具有可调性:通过调整混沌系统的参数,可以实现加密算法的可调性,进一步提高加密算法的安全性。

三、基于混沌系统的图像加密算法研究进展目前,关于基于混沌系统的图像加密算法的研究,已经取得了很大的进展。

其中,比较有代表性的算法有:1、Arnold变换和混沌映射Arnold变换是一种二维置换运算,可以将图像像素进行充分的混沌映射。

同时,通过与混沌映射相结合,加强了加密算法的随机性和不可预测性,保证了信息的安全性。

2、离散余弦变换和混沌置乱离散余弦变换是一种常用的图像压缩算法,也可以用于图像加密。

通过与混沌置乱相结合,可以使压缩后的图像得到更好的保护,同时保证加密算法的安全性。

3、混沌加法和混沌变换混沌加法和混沌变换可以同时作用于图像像素的映射,增加了加密算法的复杂度和随机性,保证了信息的安全性。

一种基于混沌序列的图像加密算法

一种基于混沌序列的图像加密算法

一种基于混沌序列的图像加密算法
徐全生;李震;杜旭强
【期刊名称】《小型微型计算机系统》
【年(卷),期】2006(27)9
【摘要】混沌序列具有易生成性,对初始条件强敏感性,可完全重现性等特点,基于以上特性提出了一种基于混沌序列的图像置乱加密算法,以初始条件为密钥生成混沌序列,然后依据该序列随机修改图像中每一个象素点的RGB值,同时采用基于DES的双向异或置乱算法对图像进行置乱.模拟实验证明该算法实现简单,计算量小,且图像的解密结果对混沌序列的初始值有较强的依赖性,安全性高.
【总页数】3页(P1754-1756)
【作者】徐全生;李震;杜旭强
【作者单位】沈阳工业大学,信息科学与工程学院,辽宁,沈阳,110023;沈阳工业大学,信息科学与工程学院,辽宁,沈阳,110023;辽宁省高速公路管理局,辽宁,沈阳,110003【正文语种】中文
【中图分类】TP309
【相关文献】
1.一种基于混沌序列的彩色图像加密算法 [J], 孟建良;庞会静;高婉青
2.一种基于混沌序列的彩色图像加密算法 [J], 穆秀春;訾鸿
3.一种基于交叉混沌序列的图像加密算法 [J], 漆世钱;赵强
4.一种基于双混沌序列的数字图像加密算法 [J], 许小勇;樊继秋;熊思灿
5.一种基于复合混沌序列的图像加密算法安全分析 [J], 胡迎春;禹思敏
因版权原因,仅展示原文概要,查看原文内容请购买。

基于混沌序列的通用数字图像加密算法

基于混沌序列的通用数字图像加密算法

基于混沌序列的通用数字图像加密算法沌序列,然后根据子密钥及图像类型将其转换为无符号整数序列,最后再依次与对应的像素值进行异或运算以实现置换加用评价指标对加密效果与安全性进行分析。

理论分析与实验结果表明,该算法密钥空间大,具有良好的加密效果、安全统计特性,且抗干忧能力较强。

键词 :数字图像加密 ;像素置换 ;混沌序列 ;Logistic 映射Universal Digital Image Encryption Algorithm Base on Chaotic SequenceLU Shou-dong(School of Information and Statisticsof, FiGuangxinanceandUniversity Economics ,Nanning,Guangxi 530003,China ) stract: In order to protect digital aimage's universal digitalinformation, image encryption algorithm based on is chaoticpropo sequencetly, according tokey the and the size of image, a chaoticis generated. sequence Then, according to the sub-key and the type of im chaotic sequenceis converted to an unsigned integer sequence. Lastly, pixelwill permutation be realizedby usencryptioning theXOR opera ween the unsigned integer sequence and each turn.corresponding The effect piofxel encryption value inis and al s osecurity analyzed by u evaluation index. Theoretical analysis and experimental results show that the algorithm has aeff large space of key, a good encryptionrity and statistical characteristics,a strong anti -anoisebility.words: digital image encryption; pixel permutation; sequenc; Logistice chaoticmapping引言可改变图像的直方图,因此安全性更好。

基于混沌算法的图像加密与解密研究

基于混沌算法的图像加密与解密研究

基于混沌算法的图像加密与解密研究近年来,随着信息技术的飞速发展和互联网应用的普及,隐私数据的保护变得尤为重要。

图像加密作为保护图像隐私的一种常用手段,受到了广泛关注。

混沌算法作为一种具有高度随机性和无周期性的灵活算法,被广泛应用于图像加密与解密领域。

本文将重点研究基于混沌算法的图像加密与解密技术,并探讨其在实际应用中的潜在优势和挑战。

首先,我们将介绍混沌算法的基本原理和特点。

混沌算法是一种在非线性动力学系统中出现的随机现象,其离散时间动态方程描述如下:x_(n+1) = f(x_n) 公式(1)其中 x 为状态变量,f 为一个非线性映射函数。

混沌算法的主要特点是初始条件和参数对最终结果产生巨大影响,对于微小的改变输入条件,会产生截然不同的输出结果。

基于混沌算法的图像加密和解密技术借鉴了上述的特点,通过将图像的像素值与混沌序列进行异或运算或置换操作,来达到加密的目的。

其中,像素值与混沌序列进行异或运算的操作是常见的加密模式。

这种加密方式可以使得加密后的图像在零交叉点上分布均匀,增强了加密的随机性。

同时,加密和解密使用相同的混沌序列作为密钥,可以简化加密和解密的过程。

接下来,我们将详细讨论基于混沌算法的图像加密和解密方法。

首先是基于混沌序列的图像置乱算法。

在这种方法中,混沌序列生成器作为密钥发挥关键作用。

首先,对图像进行象素重排,然后将混沌序列与图像进行异或运算。

在解密过程中,同样需要首先对图像进行像素重排,然后通过混沌序列与密文进行异或运算得到原始图像。

其次是基于混沌序列的图像加密算法。

在这种算法中,混沌序列的值与图像的像素值进行异或运算,然后通过再次应用混沌序列对加密后的图像进行置乱操作。

解密过程通过相同的混沌序列对密文进行逆操作来还原原始图像。

此外,对混沌算法进行改进和优化也是图像加密与解密研究的一个重要方向。

传统的混沌序列生成器存在周期性和低随机性的问题,可能导致加密算法的安全性下降。

因此,研究人员通过改进混沌映射函数、增加参数等方式来提高混沌序列的随机性和无周期性特点,从而提升图像加密的安全性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

设计题目:基于MATLAB的混沌序列图像加密程序一.设计目的图像信息生动形象,它已成为人类表达信息的重要手段之一,网络上的图像数据很多是要求发送方和接受都要进行加密通信,信息的安全与保密显得尤为重要,因此我想运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。

熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。

使用必要的算法将信息进行加解密,实现信息的保护。

二.设计内容和要求使用混沌序列图像加密技术对图像进行处理使加密后的图像使用matlab将图像信息隐藏,实现信息加密。

三.设计思路1.基于混沌的图像置乱加密算法本文提出的基于混沌的图像置乱加密算法示意图如图1所示。

加密算法如下:首先,数字图像B大小为M×N(M是图像B的行像素数,N是图像B的列像素数),将A的第j行连接到j-1行后面(j=2,3,A,M),形成长度为M×N的序列C。

其次,用Logistic混沌映射产生一个长度为的混沌序列{k1,k2,A,kM×N},并构造等差序列D:{1,2,3,A,M×N-1,M×N}。

再次,将所产生的混沌序列{k1,k2,A,kM×N}的M×N个值由小到大排序,形成有序序列{k1′,k2′,A’,kM×N’},确定序列{k1,k2,A,kM×N}中的每个ki在有序序列{k1′,k2′,A’,kM×N’}中的编号,形成置换地址集合{t1,t2,A,tM×N},其中ti为集合{1,2,A,M×N}中的一个;按置换地址集合{t1,t2,A,tM×N}对序列C进行置换,将其第i个像素置换至第ti列,i=1,2,A,M×N,得到C’。

将等差序列D做相同置换,得到D’。

最后,B’是一个M×N的矩阵,B’(i ,j)=C’((i-1)×M+j),其中i=1,2,A,M;j=i=1,2,A,N,则B’就是加密后的图像文件。

解密算法与加密算法相似,不同之处在于第3步中,以序列C’代替随机序列{k1,k2,A,kM×N},即可实现图像的解密。

2.用MATLAB的实现基于混沌的图像置乱加密算法本文借助MATLAB软件平台,使用MATLAB提供的文本编辑器进行编程实现加密功能。

根据前面加密的思路,把加密算法的编程分为三个主要模块:首先,构造一个与原图a等高等宽的矩阵b加在图像矩阵a后面形成复合矩阵c:b=zeros(m1,n1);ifm1>=n1ifm1>n1fore=1:n1b=(e,e);end……elsefore=1:n1endfore=1:(n1-m1)b((m1+e-1),e)=m1+e-1endendc=zeros(m1*2,n1);c=zeros(m1*2,1);c=[b,a];然后,用Logitic映射产生混沌序列:……forn=1:n1+100x(n+1)=q*x(n)*(1-x(n));endn=101:1:n1+100;y(n-100)=x(n);……最后,采用冒泡法将产生的混沌序列值由小到大进行排序,并利用同样的换序条理依次对复合矩阵的列和行进行打乱排序:forf=1:n1-1forh=f:n1ify(f)>y(h)k=y(f);y(f)=y(h);y(h)=k;c1=c(:,f);c(:,f)=c(:,h);c(:,h)=c1;end……forh=g:m1if y(f>y<h)k=y(f)y(f)=y(h)y(h)=k;d1=d(:,f);d(:,f)=d(:,h);d(:h)=d;end……解密的程序与加密的相反。

3.基于混沌的图像置乱加密算法效果分析利用Logistic 混沌序列对图像像素点置乱对图像文件加密,其效果要比用Logistic 混沌序列直接对图像文件加密好,令x0=0.3001,图2(b )为用Logistic 混沌序列直接对图像文件爱你进行加密的图像,图2(c )为用Logistic 混沌序列对图像像素点置乱对图像文件进行加密的图像,图2(d )为其的解密图像文件。

4.设计原理运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。

用户输入的密码必须在0~1之间任何一个数据进行加密,并且加密的程序与解密的程序输入的密码必须一致才能正确解密。

四.源程序%该程序针对图像近似系数和高频系数进行加密,以达到加密的效果clear all;t0 = clock; %测试程序运行时间im=imread('tank.jpg');im1=rgb2gray(im); %图像灰度化im1=medfilt2(im1,[3 3]); %图像平滑处理figure;imshow(im1);title('灰度化处理');im1=double(im1);%小波变换,获取图像的低频高频系数[ca1,ch1,cv1,cd1]=dwt2(im1,'bior3.7');figure(3);subplot(231);imshow(ca1,[]);title('图像近似');subplot(232);imshow(ch1);title('低频水平分量');subplot(233);imshow(cv1);title('低频垂直分量');subplot(234);imshow(cd1),;title('高频分量');%%%%%%以下为混沌加密算法%%%%%%[M,N]=size(ca1);e=hundungen(M,N,0.1);tt=0.1;fca1=mod(tt*ca1+(1-tt)*e,256);subplot(235);imshow(fca1,[]);title('加密');im2=idwt2(ca1,ch1,cv1,cd1,'bior3.7'); figure(4);imshow(uint8(im2),[]);title('灰度图像小波重构');im3=idwt2(fca1,ch1,cv1,cd1,'bior3.7'); figure(5);imshow(uint8(im3),[]);title('加密图像小波重构');%%%%%%以下为混沌解密算法%%%%%%e=hundungen(M,N,0.1);[fca1,ch1,cv1,cd1]=dwt2(im3,'bior3.7'); fca2=(fca1-(1-tt)*e)/tt;im4=idwt2(fca2,ch1,cv1,cd1,'bior3.7'); figure(6);imshow(uint8(im4),[]);title('解密图像小波重构');%置乱后图像的均值figure(7);subplot(221)imhist(uint8(im1));title('初始图像的直方图');subplot(222)imhist(uint8(fca1));title('ca1系数加密之后的直方图');subplot(223)imhist(uint8(im3));title('加密之后的直方图'); subplot(224)imhist(uint8(im4));title('解密之后的直方图');ssy=sum(sum(im3));%置乱后图像的均值uy=ssy/(M*N);vy=sum(sum((im3-uy)^2));ssx=sum(sum(im1));%原图像的均值ux=ssx/(M*N);vx=sum(sum((im1-ux)^2)); Variancey=vy/uy; %置乱后图像的方差Variancex=vx/ux; %原图像的方差%置乱度DDD=Variancey/Variancex;etime(clock,t0)五.运行结果及分析总结1.运行结果:灰度化处理图像近似低频水平分量低频垂直分量高频分量加密灰度图像小波重构加密图像小波重构解密图像小波重构初始图像的直方图01002005001000ca1系数加密之后的直方图0100200加密之后的直方图010020020004000解密之后的直方图01002002.结果分析:由程序的运行结果来看,原图被加密后在显示出来,已经无法辨别其内容,实现了图像数据的隐藏,这种混沌序列方法对图像数据的加密是十分有用,实现了信息的保密,在网络传输中能够很好地保护图像数据不被第三方轻易获取其内容,实现数据的隐藏保护。

3.心得体会通过运用matlab语言进行图像数据的加解密,不仅了解了matlab本身处理信息的优越性也了解了信息安全的必要性,对于信息的保密是十分重要的,尤其是一些安全部门。

对于图像信息的加密了解了混沌序列的一些初步知识,对于混沌序列的思想有的一些了解,本程序是通过异或运算的特性对图像信息进行加解密,使图像信息的到保护。

相关文档
最新文档