当前位置:文档之家› 基于混沌序列的加密图像隐藏技术的设计与实现论文

基于混沌序列的加密图像隐藏技术的设计与实现论文

基于混沌序列的加密图像隐藏技术的设计与实现论文
基于混沌序列的加密图像隐藏技术的设计与实现论文

混沌加密技术综述

混沌加密技术综述 混沌理论是近年来发展较快的非线性科学的分支,因其非周期、连续宽频带、类噪声和长期不可预测等特点,适用于保密通信等领域。本文从混沌加密技术的原理、发展阶段和特点的问题对其较为的分析和总结。关键词:混沌的原理… 摘要:混沌理论是近年来发展较快的非线性科学的分支,因其非周期、连续宽频带、类噪声和长期不可预测等特点,适用于保密通信等领域。本文从混沌加密技术的原理、发展阶段和特点的问题对其较为的分析和总结。关键词:混沌的原理加密算法性能评估一、混沌的原理混沌是的非线性、非平衡的动力学过程,其特点为: (1)混沌系统的是许多有序的集合,而每个有序分量在条件下,都不起主导作用;(2)混沌看起来似为随机,但的;(3)混沌系统对初始条件极为敏感,两个相同的混沌系统,若使其稍异的初态就会迅速变成完全不同的状态。1963年,美国气象学家洛伦兹(Lrenz)混沌理论,气候从本质上是不可预测的,最微小的条件将会巨大的天气,这著名的“蝴蝶效应”。此后混沌在各个领域都了不同程度的运用。20 世纪80 年代开始,短短的二十几年里,混沌动力学了的应用和发展。二、混沌在加密算法中的应用混沌系统对初值的敏感性,很小的初值误差就能被系统放大,,系统的长期性是不可预测的;又混沌序列的统计特性,它可以产生随机数列,特性很适合于序列加密技术。信息论的奠基人美国数学家Shannn指出:若能以某种产生一随机序列,序列由密钥所,任何输入值微小对输出都大,则的序列就可以加密。混沌系统恰恰符合要求。混沌系统的特性使得它在数值分布上不符合概率统计学原理, 得稳定的概率分布特征;, 混沌数集是实数范围, 还可以推广到复数范围。, 从理论上讲, 混沌原理对数据加密,可以防范频率分析攻击、穷举攻击等攻击方法, 使得密码难于分析、破译。从1992年至今,混沌保密通信经历了四代。混沌掩盖和混沌键控属于代混沌保密通信技术,安全性能非常低,实用性大大折扣。混沌调制属于代混沌保密通信技术,代系统的安全性能比代高,仍然达满意的程度。混沌加密技术属于代混沌保密通信,该类方法将混沌和密码学的优点起来,非常高的安全性能。基于脉冲同步的混沌通信则属于代混沌保密通信。三、混沌加密算法的性能评估参考美国标准与技术协会(NIST)的评判规则LNIST 的评判规则大体分为三个:安全性、代价和算法特性。介绍了基于Lrenz系统的混沌加密算法,以此标准分析了其性能,并将其与当前通用加密算法。1.安全性分析,混沌系统对初始值和参数非常敏感,可以的密钥集合,完全加密的需要。对混沌系统生成的二进制序列检验,0和1的分布均匀,游程符合随机数要求,可以是随机序列。,混沌加密属于流密码,对分组加密的攻击方法是无效的。,对选择明文密文攻击方法,混沌的单向性和混沌信号的迭代,异或操作后密钥流的推断几乎不。2.代价分析算法的代价包括代价和空间代价。代价又分为和加密。通常,加密前的主要是用来生成子密钥,加密主要是在子密钥的控制下对明文数据变换。混沌加密属于流密码的范畴,它的非常短;加密时只对数据的各个位异或操作,其主要花费在密钥流的生成操作上,相流行的分组加密算法,其花费很少的。空间代价分为算法的静止空间和运行态空间。静止空间指算法变成程序后本身所占用的空间,为代码的长度。运行态空间指在加密过程中算法所需要的临时空间。混沌加密算法S-bx空间,临时变量也少,而且,它循环产生密钥流,循环过程中需要寄存的变量有限,,其运行时占用的空间很少,在空间代价上是优秀的。3.特性混沌加密算法的加密和解密过程是可以重用的,其所占用的空间大大缩小。它的软件和硬件特性都比,分别用++和Java语言了该算法,基于该算法的DSP也开发设计四、混沌加密算法的问题1.短周期响应现混沌序列的所生成序列的周期性伪随机性、性、互性等的估计是在统计分析上,或是实验测试给出的,这难以其每个序列的周期足够大,性足够高,使人放心地采用它来加密。例如,在自治状态下,输入信号为零时,加密器为有限周期响应。不同初始状态对应于不同周期,其周期长度很短,缺点在某种程度上降低了混沌加密系统的保密性。2.有限精度效应混沌序列的生成总是要用有限精度器件来的,从而混沌序列生成器可归结为有限自动机来描述。,混沌生成器能否超越已用有限自动机和布尔逻辑理论所给

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

设计题目:基于MATLAB的混沌序列图像加密程序 一.设计目的 图像信息生动形象,它已成为人类表达信息的重要手段之一,网络上的图像数据很多是要求发送方和接受都要进行加密通信,信息的安全与保密显得尤为重 要,因此我想运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保护。 熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。使用必要的算法将信息进行加解密,实现信息的保护。 .设计内容和要求 使用混沌序列图像加密技术对图像进行处理使加密后的图像 使用matlab将图像信息隐藏,实现信息加密。 三.设计思路 1. 基于混沌的图像置乱加密算法 本文提出的基于混沌的图像置乱加密算法示意图如图1所示 加密算法如下:首先,数字图像B大小为MX N( M是图像B的行像素数,N是图像B的列像素数),将A的第j行连接到j-1行后面(j=2,3, A,M,形成长度为MX N的序列C。其次,用Logistic混沌映射产生一个长度为的混沌序列{k1,k2,A,kMX N},并构造等差序列D: {1,2,3, A,MX N-1,MX N}。再次,将所

产生的混沌序列{kl, k2. A, kMX N}的M N个值由小到大排序,形成有序序列{k1', k2'. A' kMX N' },确定序列{k1, k2, A, kMX N}中的每个ki在有序序列{k1', k2', A , kMX N' }中的编号,形成置换地址集合 {t1 , t2 , A, tM X N},其中ti为集合{1 , 2, A, MX N}中的一个;按置换地址集合{t1 , t2 , A, tM X N}对序列C进行置换,将其第i个像素置换至第ti列, i=1 , 2, A, MX N,得到C'。将等差序列D做相同置换,得到D'。 最后,B'是一个MX N 的矩阵,B' (i ,j)=C ' ((i-1) X M+j),其中i=1 , 2, A, M j=i=1 , 2, A, N,则B'就是加密后的图像文件。 解密算法与加密算法相似,不同之处在于第3步中,以序列C'代替随机序列{k1, k2, A, kMX N},即可实现图像的解密。 2. 用MATLAB勺实现基于混沌的图像置乱加密算法 本文借助MATLAB^件平台,使用MATLAB!供的文本编辑器进行编程实现加密功能。根据前面加密的思路,把加密算法的编程分为三个主要模块:首先,构造一个与原图a等高等宽的矩阵b加在图像矩阵a后面形成复合矩阵c: b=zeros(m1, n1); ifm1>=n1 ifm1> n1 fore=1: n1 b=(e,e); end else fore=1: n1 end fore=1:( n1-m1) b((m1+e-1),e)=m1+e-1 end end c=zeros(m1*2, n1); c=zeros(m1*2,1); c=[b,a]; 然后,用Logitic映射产生混沌序列:

基于混沌映射的图像加密研究

目录 摘要 ...................................................................................................................................... I Abstract ............................................................................................................................... II 目录 ................................................................................................................................... I V 第一章绪论 . (1) §1.1研究背景与意义 (1) §1.2国内外研究现状 (2) §1.3论文研究内容与章节安排 (5) §1.3.1论文的主要研究内容 (5) §1.3.2论文章节安排 (5) 第二章混沌图像加密基础 (7) §2.1混沌理论 (7) §2.1.1混沌的定义 (7) §2.1.2混沌的主要特征 (8) §2.1.3典型的混沌映射 (9) §2.2密码学基础 (12) §2.2.1密码系统的结构 (13) §2.2.2密码系统的分类 (14) §2.2.3密码分析 (15) §2.3图像加密概述 (16) §2.3.1图像的基本概念 (17) §2.3.2图像加密的分类 (17) §2.3.3图像加密原理 (18) §2.3.4图像加密的评价标准 (20) §2.4本章小结 (22) 第三章基于Lorenz映射和Logistic映射的图像分块加密算法 (23) §3.0引言 (23) §3.1混沌映射的选择 (23) §3.1.1 Lorenz 混沌映射 (23) §3.1.2 Logistic 混沌映射 (23) §3.2加密算法设计 (24) §3.2.1密钥的生成 (24) §3.2.2加密算法流程 (24)

RSA加密算法加密与解密过程解析

RSA加密算法加密与解密过程解析 1.加密算法概述 加密算法根据内容是否可以还原分为可逆加密和非可逆加密。 可逆加密根据其加密解密是否使用的同一个密钥而可以分为对称加密和非对称加密。 所谓对称加密即是指在加密和解密时使用的是同一个密钥:举个简单的例子,对一个字符串C做简单的加密处理,对于每个字符都和A做异或,形成密文S。 解密的时候再用密文S和密钥A做异或,还原为原来的字符串C。这种加密方式有一个很大的缺点就是不安全,因为一旦加密用的密钥泄露了之后,就可以用这个密钥破解其他所有的密文。 非对称加密在加密和解密过程中使用不同的密钥,即公钥和私钥。公钥用于加密,所有人都可见,私钥用于解密,只有解密者持有。就算在一次加密过程中原文和密文发生泄漏,破解者在知道原文、密文和公钥的情况下无法推理出私钥,很大程度上保证了数据的安全性。 此处,我们介绍一种非常具有代表性的非对称加密算法,RSA加密算法。RSA 算法是1977年发明的,全称是RSA Public Key System,这个Public Key 就是指的公共密钥。 2.密钥的计算获取过程 密钥的计算过程为:首先选择两个质数p和q,令n=p*q。 令k=?(n)=(p?1)(q?1),原理见4的分析 选择任意整数d,保证其与k互质 取整数e,使得[de]k=[1]k。也就是说de=kt+1,t为某一整数。

3.RSA加密算法的使用过程 同样以一个字符串来进行举例,例如要对字符串the art of programming 进行加密,RSA算法会提供两个公钥e和n,其值为两个正整数,解密方持有一个私钥d,然后开始加密解密过程过程。 1. 首先根据一定的规整将字符串转换为正整数z,例如对应为0到36,转化后形成了一个整数序列。 2. 对于每个字符对应的正整数映射值z,计算其加密值M=(N^e)%n. 其中N^e表示N的e次方。 3. 解密方收到密文后开始解密,计算解密后的值为(M^d)%n,可在此得到正整数z。 4. 根据开始设定的公共转化规则,即可将z转化为对应的字符,获得明文。 4.RSA加密算法原理解析 下面分析其内在的数学原理,说到RSA加密算法就不得不说到欧拉定理。 欧拉定理(Euler’s theorem)是欧拉在证明费马小定理的过程中,发现的一个适用性更广的定理。 首先定义一个函数,叫做欧拉Phi函数,即?(n),其中,n是一个正整数。?(n)=总数(从1到n?1,与n互质整数) 比如5,那么1,2,3,4,都与5互质。与5互质的数有4个。?(5)=4再比如6,与1,5互质,与2,3,4并不互质。因此,?(6)=2

用MATLAB实现基于混沌的图像置乱加密算法

用MATLAB实现基于混沌的图像置乱加密算法 由于图像文件的加密有其自身的要求,传统的文字加密方法不适合图像文件加密。为此,我们在混沌映射加密算法的基础上,提出了一种利用Logistic混沌序列对图像像素点置乱实现加密的算法,那么,我们今天借助MATLAB软件平台,看看基于混沌的图像置乱加密算法如何实现。 一、基于混沌的图像置乱加密算法 本文提出的基于混沌的图像置乱加密算法示意图如图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},即可实现图像的解密。 二、用MATLAB的实现基于混沌的图像置乱加密算法 本文借助MATLAB软件平台,使用MATLAB提供的文本编辑器进行编程实现加密功能。根据前面加密的思路,把加密算法的编程分为三个主要模块:首先,构造一个与原图a等高等宽的矩阵b加在图像矩阵a后面形成复合矩阵c: b=zeros(m1,n1); ifm1>=n1 ifm1>n1 fore=1:n1 b=(e,e); end …… else fore=1:n1

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

一种基于混沌序列的数字图像加密算法 周焕芹 (渭南师范学院数学与信息科学系,陕西渭南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 University M arch2008 Vol.23 No.2

一种新的基于混沌的彩色图像加密方案谢涛

收稿日期:2012-05-27;修回日期:2012-07-04 作者简介:谢涛(1983-),男,四川巴中人,实验师,硕士,主要研究方向为虚拟现实、图像处理(grabtiger@163.com ). 一种新的基于混沌的彩色图像加密方案 谢 涛1 ,何 兴 2 (1.重庆师范大学计算机与信息科学学院,重庆401331;2.重庆大学计算机学院,重庆401331)摘 要:利用耦合logistic 映射产生随机性很强的密钥流,结合R 、G 、B 三者的关系,设计了一种初始简单扩散— 联合置乱—联合扩散的加密方法。仿真结果表明,比单独对每个颜色分量实施加密,该方法具有更强的安全性。关键词:图像加密;联合置乱;联合扩散;耦合logistic 映射中图分类号:TP391;TP309 文献标志码:A 文章编号:1001-3695(2013)01-0318-03 doi :10.3969/j.issn.1001-3695.2013.01.082 New color image encryption scheme based on chaos XIE Tao 1,HE Xing 2 (1.College of Computer &Information Science ,Chongqing Nomal University ,Chongqing 401331,China ;2.College of Computer Science ,Chongqing University ,Chongqing 401331,China ) Abstract :This paper firstly used the coupled logistic map to generate random strong key stream ,and then designed a kind of initial simple diffusion-joint scrambling-combined diffusion method from the point of the relationships of components RGB.The simulation results indicate that this algorithm has stronger security compared with the independent encryption of each color component. Key words :image encryption ;joint scrambling ;combined diffusion ;coupled logistic map (CLM ) 0引言 随着计算机网络技术的飞速发展,多媒体安全变得越来 越重要。其中图像信息的传输扮演着非常重要的角色,而传统的加密技术将其作为普通数据流进行加密,并没有考虑到多媒体数据本身的特点,如很高的冗余性和很强的相关性。Shan-non [1] 曾在其经典文章中提到用于指导密码设计的两个基本原 则,即扩散和置乱。扩散是将明文冗余度分散到密文中使之分散开来,以便隐藏明文的统计结构,其实现方式是使明文的每一位影响密文中多位的值;而置乱是用于掩盖明文、密文和密钥之间的关系,使密钥和密文之间的统计关系变得尽可能复杂,导致密码攻击者无法从密文推理得到密钥。混沌所具有的混合、对参数和初值的敏感性等基本特性与密码学之间有着天然的联系, 并在结构上存在某种相似性。因此,近些年来,有许多中外学者提出了一些关于混沌图像的加密算法 [2 6] 。 对于彩色图像,每个图像的像素由R (红色)、G (绿色)、B (蓝色)三个颜色成分组成。与灰度图像相比,彩色图像提供更多信息,因此吸引了更多的关注 [7 10] 。一般的彩色图像加 密算法只是把彩色图像看成由三个灰度图像组成,从而对于每一个灰度图像分别进行处理,这样做很大的缺陷是忽略了R 、G 、B 之间的关系,与灰度图像加密没什么大的区别。鉴于此,本文设计了一种新型的彩色图像加密算法,用混沌系统同时对三个颜色部分加密使得它们之间充分地相互影响,而且运用联合型的置乱和扩散方法减少了R 、 G 、B 之间的相关性。仿真结果表明此方案能够有效地加密彩色图像,并抵抗不同类型的经典攻击。 1混沌系统 一维logistic 系统因为简单且高效,故常用来产生密钥流, 然而密钥空间太小,不能抵抗穷举攻击,因此安全性不是很好。本文采用CLM (耦合logistic 映射)来构造密码系统: x i n +1=(1-ε)g (x i n )+ ε2 [g (x i +1n )+g (x i -1 n )](1) 其中:i =1,2,3,为空间方向变量;n =1,2,…,是时间方向变 量;x i n 代表状态变量;ε∈(0, 1)是耦合系数;g (x )是logistic 映射,如式(2)所示。周期边界条件x 0n =x 3 n 。CLM 系统有两个正 的Lyaponuv 指数 [11] ,因此它是混沌的。 g (x )=λx (1-x ) x ∈(0,1),λ∈(3.5699456, 4](2) 当λ∈(3.57,4]时,logistic 映射可通过倍周期分叉演进至混沌状态。 2算法的设计与实现 加密过程如下: a )准备工作和密钥产生。明文图像可表示为 P ={R P n ,G P n ,B P n } n =1,2,…,L (3) 其中,每一个颜色分量R 、G 、B 可变成一个向量,其元素值均为0 255。此处假设L =256?256,也就是图像的大小尺寸均为256?256;否则,可以对图像作一些分割,最后不足的部分可以 进行添加。设定初始参数λ和初始密钥值x 0 1、x 11、x 21, 迭代式(1)和(2)L +h 次,而h >0是为了提高初始敏感性,从而获得三个序列: 第30卷第1期2013年1月计算机应用研究 Application Research of Computers Vol.30No.1Jan.2013

详解加密技术概念、加密方法以及应用-毕业论文外文翻译

详解加密技术概念、加密方法以及应用 随着网络技术的发展,网络安全也就成为当今网络社会的焦点中的焦点,几乎没有人不在谈论网络上的安全问题,病毒、黑客程序、邮件炸弹、远程侦听等这一切都无不让人胆战心惊。病毒、黑客的猖獗使身处今日网络社会的人们感觉到谈网色变,无所适从。 但我们必需清楚地认识到,这一切一切的安全问题我们不可一下全部找到解决方案,况且有的是根本无法找到彻底的解决方案,如病毒程序,因为任何反病毒程序都只能在新病毒发现之后才能开发出来,目前还没有哪能一家反病毒软件开发商敢承诺他们的软件能查杀所有已知的和未知的病毒,所以我们不能有等网络安全了再上网的念头,因为或许网络不能有这么一日,就象“矛”与“盾”,网络与病毒、黑客永远是一对共存体。 现代的电脑加密技术就是适应了网络安全的需要而应运产生的,它为我们进行一般的电子商务活动提供了安全保障,如在网络中进行文件传输、电子邮件往来和进行合同文本的签署等。其实加密技术也不是什么新生事物,只不过应用在当今电子商务、电脑网络中还是近几年的历史。下面我们就详细介绍一下加密技术的方方面面,希望能为那些对加密技术还一知半解的朋友提供一个详细了解的机会! 一、加密的由来 加密作为保障数据安全的一种方式,它不是现在才有的,它产生的历史相当久远,它是起源于要追溯于公元前2000年(几个世纪了),虽然它不是现在我们所讲的加密技术(甚至不叫加密),但作为一种加密的概念,确实早在几个世纪前就诞生了。当时埃及人是最先使用特别的象形文字作为信息编码的,随着时间推移,巴比伦、美索不达米亚和希腊文明都开始使用一些方法来保护他们的书面信息。近期加密技术主要应用于军事领域,如美国独立战争、美国内战和两次世界大战。最广为人知的编码机器是German Enigma机,在第二次世界大战中德国人利用它创建了加密信息。此后,由于Alan Turing和Ultra计划以及其他人的努力,终于对德国人的密码进行了破解。当初,计算机的研究就是为了破解德国人的密码,人们并没有想到计算机给今天带来的信息革命。随着计算机的发展,运算能力的

用实例讲解RSA加密算法(精)

可能各位同事好久没有接触数学了,看了这些公式不免一头雾水。别急,在没有正式讲解RSA加密算法以前,让我们先复习一下数学上的几个基本概念,它们在后面的介绍中要用到: 一、什么是“素数”? 素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。例如,15=3*5,所以15不是素数;又如,12=6*2=4*3,所以12也不是素数。另一方面,13除了等于13*1以外,不能表示为其它任何两个整数的乘积,所以13是一个素数。素数也称为“质数”。 二、什么是“互质数”(或“互素数”)? 小学数学教材对互质数是这样定义的:“公约数只有1的两个数,叫做互质数。”这里所说的“两个数”是指自然数。 判别方法主要有以下几种(不限于此): (1)两个质数一定是互质数。例如,2与7、13与19。 (2)一个质数如果不能整除另一个合数,这两个数为互质数。例如,3与10、5与26。(3)1不是质数也不是合数,它和任何一个自然数在一起都是互质数。如1和9908。(4)相邻的两个自然数是互质数。如15与16。 (5)相邻的两个奇数是互质数。如49与51。 (6)大数是质数的两个数是互质数。如97与88。 (7)小数是质数,大数不是小数的倍数的两个数是互质数。如7和16。 (8)两个数都是合数(二数差又较大),小数所有的质因数,都不是大数的约数,这两个数是互质数。如357与715,357=3×7×17,而3、7和17都不是715的约数,这两个数为互质数。等等。 三、什么是模指数运算? 指数运算谁都懂,不必说了,先说说模运算。模运算是整数运算,有一个整数m,以n 为模做模运算,即m mod n。怎样做呢?让m去被n整除,只取所得的余数作为结果,就

基于混沌系统的图像加密算法研究[开题报告]

开题报告 通信工程 基于混沌系统的图像加密算法研究 一、课题研究意义及现状 意义: 随着计算机技术和网络通信技术不断发展和迅速普及,通信保密问题日益突出。信息安全问题已经成为阻碍经济持续稳定发展和威胁国家安全的一个重要问题,而密码学是用来保证信息安全的一种必要的手段,现代密码学便应运而生,如经典的私钥密码算法DES、IDEA、AES和公钥密码算法RSA、EIGamal等,新颖的量子密码、椭圆曲线密码算法等,在信息安全的保密方面都发挥了重要作用。图像信息生动形象,它已经成为人类表达信息的重要手段之一,网络上的图像数据有很多是要求发送方和接收方要进行保密通信的,信息安全与保密显得越来越重要。目前,国际上正在探讨使用一些非传统的方法进行信息加密与隐藏,其中混沌理论就是被采纳和得到广泛应用的方法之一。混沌加密是近年来兴起的一个研究课题,基于混沌理论的保密通信、信息加密和信息隐藏技术的研究已成为国际非线性科学和信息科学两个领域交叉融合的热门前沿课题之一,也是国际上高科技研究的一个新领域,基于混沌理论的密码学近来成为很热门的科学。对于数字图像来说,具有其特别的一面就是数字图像具有数据量大、数据相关度高等特点,用传统的加密方式对图像加密时存在效率低的缺点;而新型的混沌加密方式为图像加密提供了一种新的有效途径。基于这种原因,本论文主要探讨基于混沌理论的数字图像加密算法。 混沌现象是在非线性动力系统中出现的确定性、类似随机的过程,这种过程既非周期又非收敛,并且对初值具有极其敏感的依赖性,混沌系统所具有的这些基本特性恰好能够满足保密通信及密码学的基本要求。图像加密过程就是通过加密系统把原始的图像信息(明文),按照加密算法变换成与明文完全不同的数字信息(密文)的过程。 国内外现状: 1963年,洛伦兹发表论文“决定论非周期流”,讨论了天气预报的困难和大气湍流现象,给出了著名的洛伦兹方程,这是在耗散系统中,一个确定的方程却能导出混沌解的第一个实例,从而揭歼了对混沌现象深入研究的序幕。混沌出现,古典科学便终止了。 1975年,美籍华人李天岩和美国数学家约克(Yorke)一篇震动整个学术界的论文“周期3

DES加密算法详解

DES加密算法详解- - 对加密解密一直挺喜欢的,可还是没有怎么好好学习过,希望这是一个好的开始。 在网上搜了一下关于DES的说明,发现有些杂乱,所以还是有必要整合一下。 写了一点代码,还没有完成,不过,还不能编译通过,^_^ 刚看了一下,发现还是说得够模糊的,有机会再整理一下。 昏倒,一直运行不对,今天才仔细查出来,原来问题是出在Des_Data_P(const _b32& input, _b32 output), 我的output用了传值调用,失败呀。应该是Des_Data_P(const _b32& input, _b32 & output) DES算法的入口参数有三个: Key, Data, Mode Key 为64bit密钥,Data为64bit数据,Mode为加密还是解密。 DES算法的过程: 1. 对输入的密钥进行变换。 用户的64bit密钥,其中第8,16,24,32,40,48,56,64位是校验位,使得每个密钥都有奇数个1。所以密钥事实上是56位。对这56位密钥进行如下表的换位。 57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4,

表的意思是第57位移到第1位,第49位移到第2位,...... 以此类推。变换后得到56b it数据,将它分成两部分,C[0][28], D[0][28]。 2. 计算16个子密钥,计算方法C[i][28] D[i][28]为对前一个C[i-1][28], D[i-1][28]做循环左移操作。16次的左移位数如下表: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 (第i次) 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1 (左移位数) 3. 串联计算出来的C[i][28] D[i][28] 得到56位,然后对它进行如下变换得到48位子密钥K[i][48] 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 1 6, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 4 6, 42, 50, 36, 29, 32, 表的意思是第14位移到第1位,第17位移到第2位,以此类推。在此过程中,发现第9,18,22,25,35,38,43,54位丢弃。 4. 对64bit的明文输入进行换位变换。换位表如下: 58, 50, 12, 34, 26, 18, 10, 2, 60, 52, 44, 36, 28, 20, 12, 4, 62, 54, 46, 38, 30, 22, 14, 6, 64, 56, 48, 40, 32, 24, 16, 8, 57, 49, 41, 33, 25, 17, 9, 1, 59, 51, 43, 35, 27, 19, 11, 3, 61, 53, 45, 37, 29, 21, 13, 5, 63, 55, 47, 39, 31, 23, 15, 7 表的意思就是第一次变换时,第58位移到第1位,第50位移到第2位,...... 依此类推。得到64位数据,将这数据前后分成两块L[0][32], R[0][32]。 5. 加密过程,对R[i][32]进行扩展变换成48位数,方法如下,记为E(R[i][32]) 32, 1, 2, 3, 4, 5, 4, 5, 6, 7, 8, 9,

基于MATLAB的混沌序列图像加密算法的研究的开题报告

吉林农业大学 本科毕业设计开题报告

课题名称:基于MATLAB的混沌序列图像加密算法的研究 学院(系):信息技术学院 年级专业:2009级电子信息科学与技术2班 学生姓名:XX 指导教师:刘媛媛 完成日期:2013年2月27日 目录 一、设计目的及意义 (3) 二、研究现状 (3) 三、设计内容 (3) 四、开发环境 (3) 五、分析设计 (3) 1、设计要求 (3) 2、设计原理 (3) 3、涉及到的程序代码 (4)

4、主要思想 (6) 六、结果及分析 (6) 1、运行示例 (6) 2、结果评估 (8) 七、参考文献 (9) 八、研究工作进度 (10) 一、设计目的及意义 熟练使用matlab运用matlab进行编程,使用matlab语言进行数据的隐藏加密,确保数字图像信息的安全,混沌序列具有容易生成,对初始条件和混沌参数敏感等特点,近年来在图像加密领域得到了广泛的应用。使用必要的算法将信息进行加解密,实现信息的保护。 二、研究现状 随着Internet技术与多媒体技术的飞速发展,数字化信息可以以不同的形式在网络上方便、快捷地传输。多媒体通信逐渐成为人们之间信息交流的重要手段。人们通过网络交流各种信息,进行网上贸易等。因此,信息的

安全与保密显得越来越重要。信息的安全与保密不仅与国家的政治、军事和外交等有重大的关系,而且与国家的经济、商务活动以及个人都有极大的关系。随着信息化社会的到来,数字信息与网络已成为人们生活中的重要组成部分,他们给我们带来方便的同时,也给我们带来了隐患:敏感信息可能轻易地被窃取、篡改、非法复制和传播等。因此信息安全已成为人们关心的焦点,也是当今的研究热点和难点。 多媒体数据,尤其是图像,比传统的文字蕴涵更大的信息量,因而成为人类社会在信息利用方面的重要手段。因此针对多媒体信息安全保护技术的研究也显得尤为重要,多媒体信息安全是集数学、密码学、信息论、概率论、计算复杂度理论和计算机网络以及其它计算机应用技术于一体的多学科交叉的研究课题。 三、设计内容 使用混沌序列图像加密技术对图像进行处理使加密后的图像 四、开发环境 MATLAB? & Simulink? Release 2010a windows7环境 五、分析设计 1.实验要求 使用matlab将图像信息隐藏,实现信息加密。 2.设计原理 运用异或运算将数据进行隐藏,连续使用同一数据对图像数据两次异或运算图像的数据不发生改变,利用这一特性对图像信息进行加密保 护。用户输入的密码必须在0~1之间任何一个数据进行加密,并且加密 的程序与解密的程序输入的密码必须一致才能正确解密。

Henon混沌图像加密研究

基于Henon 混沌映射的图像加密DSP 系统实现 一 实验目的 1. 熟悉具有分组密码结构特性的混沌映射; 2. 熟悉DSP 实验箱进行图像加密研究; 3. 掌握利用二维Henon 混沌映射实现图像像素扩散加密的原理; 4. 培养学生从事高维信号安全保护的动手编程能力。 二 实验内容 1.实验原理 用Henon 映射产生的序列对图像进行异或运算,实现图像的加解密。 Henon 混沌映射是典型的二维离散混沌映射,其方程: 12 1++-=+n n n y px x n n qx y =+1 2.实验步骤 图像加密算法步骤: 设 ()n m y x I ?,为初始图像,其中y x , 代表像素的位置信息,n m ?表示 图像的大小,其中加密过程可描述如下: (1) 生成混沌序列,设定初始值 x(1)与 y(1),Henon 混沌系统的控制 参数 p 与 q ,利用 Henon 映射生成两个长度为() 2n m ? 的混沌序列 x(i)、y(j),其中 p =1.4,q =0.3,0≤x(1)≤1,0≤y(1)≤1,i = j = 0,1,…,()2n m ?, 将x(i)与 y(j)按顺序保存在n m ?数组中,进而将其转换成n m ?矩阵,表示为I1。 (2) 异或运算:将初始图像表示为 I ,做异或运算 I2= I ⊕I2,从而实现对初始图像的置乱加密,得到最终的加密图像 I2。该算法流程图如下所示:

加密算法流程图 3. 实验源代码(见附录) 三 实验内容及步骤 1.采用Matlab 编写图像加解密程序并仿真测试(详细代码见附录1); 2.采用在DSP 环境下实时运行的图像加解密实际程序; 3. 对加密图像1维直方图计算出灰度概率方差。 四 实验结果及分析 实验结果如下图所示 混沌序列 混沌映射 进行异或 加密图像 原始图像

des共享加密算法

加密算法------DES加密算法详解 一、加密算法的分类 1.对称加解密算法 a.通信双方同时掌握一个密钥,加密解密都是由一个密钥完成的(即加密密钥等于解密密钥,加解密密钥可以相互推倒出来)。 b.双方通信前共同拟定一个密钥,不对第三方公开。 c.不具有个体原子性,一个密钥被共享,泄漏几率增大 2.公私钥加解密算法 a.通信双方掌握不同的密钥,不同方向的加解密由不同的密钥完成。 二、对称加密算法的代表----DES加密算法 原理:该算法是一个利用56+8奇偶校验位(第8,16,24,32,40,48,56,64)=64位的密钥对以64位为单位的块数据进行加解密。 具体过程: 有明文M(64位)= 0123456789ABCDEF 即M(64位)= 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 L(32位)= 0000 0001 0010 0011 0100 0101 0110 0111 R(32位)= 1000 1001 1010 1011 1100 1101 1110 1111 有密钥64位:133457799BBCDFF1 即K(64位)= 0001001100110100010101110111100110011011 10111100 11011111 11110001 注:其中红色为奇偶校验位,即实际密钥为56位 第一步:按照下表中的规则对各个位进行交换,生成16个子钥(48位)

交换规则表(8*7): 57 49 41 33 25 17 9 1 58 50 4 2 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4 交换方法:第一行第一列的数为57,那么就将K中第一位上的数换成K中第57位上的数(将0换为了57位上的1),依次类推。 那么原K(64位)= 00010011 00110100 01010111 01111001 10011011 10111100 11011111 1 1110001 去掉奇偶校验位,再经过上表的转换就变为了: K + (56位)= 1111000 0110011 0010101 0101111 0101010 1011001 1001111 0001111 因此:C0(28位)= 1111000 0110011 0010101 0101111 D0(28位)= 0101010 1011001 1001111 0001111 下来依次是C1,D1为C0,D0左移一位,C2,D2为C1,D1左移一位,C3,D3为C2,D2左移两位....... 所以,可以得到C1D1----C16D16的结果为:

详解DES-CBC加密算法

详解DES-CBC加密算法 如果SA加密组件中数据加密算法的标识符等于0x01,那么将使用CBC模式的DES算法来加密与该SA相关联的业务数据。使用DES-CBC(Data Encryption Standard-Cipher Block Chaining,密码分组链接模式下的数据加密标准)技术,可以对MACPDU的载荷域进行加密,但无法对通用MAC头(Generic MAC Header,GMH)和循环冗余校验(CRC)数据进行加密。DES-CBC的加密过程如图7-4所示。 实现密码分组链接(CBC)模式需要一个初始化向量(Initialization Vector IV),该微量是通过将安全关联(Security Association,SA)中的初始化向量(1V)参数与物理层同步域内容进行异或(Exclusive OR,XOR)运算得到的。CBCIV的计算方法是:在下行链路上,CBC的初始化是通过将TEK密钥信息中的IV参数与最新DL-MAP中的物理层同步域的内容进行异或运算来实现的;在上行链路上,CBC的初始化是通过将TEK密钥信息中的IV参数与DL-MAP中的物理层同步域的内容进行异或运算来实现的,这个DL—MAP在当前UL-MAP被创建或接收到时必须是有效的。 DES加密过程使用连接安全关联中的初始化向量(1V)和传输加密密钥(Traffic Encryption Key,TEK),来对PDU载荷进行加密。然后,密文载荷代替原始明文载荷。GMH中的EC(En- cryption Control,加密控制)位为1时,表示 对载荷进行加 密操作;加密密钥序列(Encryption Key Sequence,EKS)字段只有在EC字段设置成1时才有效,用于表示传输加密密钥和初始向量的序号将被用于载荷加密。对于新的密文载荷,如果包含了CRC,则需要对其进行更新。 总体而言,DES-CBC加密方案具有较低的安全性,这一方面是由于DES算法本身的脆弱性造成的,另一方面是用于这种加密方法的数据封装没有完整性和抗重放保 护机制。 CBC模式下的数据加密和解密 编辑文档

相关主题
文本预览
相关文档 最新文档