混沌图像加密讲解ppt课件.ppt
混 沌 图 像 加 密,混沌系统类型与加密算法,各种类型的混沌系统,1.典型蔡氏混沌电路,2. 采用里奥登电感的蔡氏电路,本变形主要是改变Chua氏电路的电感部分,使用模拟电感代替原有的电感。 完整电路:,里奥登电感实现电路 混沌图像:,3.文氏桥蔡氏氏电路,采用RC文氏桥进行驱动,去除原CHUA氏电路的电感部分,文氏桥蔡氏氏电路的混沌图像:,4.洛仑兹混沌电路,对于一个洛仑兹混沌电路,可以将其写成: 为确保系统输出电压在运放、乘法器的电源提供电压范围内,将上式变量变换成U1x/10,U2y/10,U3z/10。则有:,现在对上式构建电路。采用运放加减法、积分电路,反相器,乘法器。,连接各项电路,即各项电路的输入端U1、U2、U3分别与积分电路输出端的U1、U2、U3相连,则构成系统电路。此时,系统方程如下,并得出电路图,洛伦兹混沌电路的混沌图像,5. Chen氏混沌电路,Chen氏混沌系统的无量纲状态方程如下: 其中参数取值为a=35,b=3,c=28。采用Matlab进行数值仿真,用三阶Runge-Kutta法求解微分方程。选取初始值x(0)=0.01,y(0)=0.1,z(0)=0.11。步长取0.001。计算机模拟相图如图所示。,比例压缩变换法重新调整了原系统方程,令x=10u,y=10v,z=10w。化成 这里的状态变量做了10倍的缩小变换,调整后的系统(2)与原系统(1)等价,并不改变系统的物理性质。由于乘法器AD633的增益为0.1, 因此,从图3得到的电路方程如下: 我们给出了电路方程参数:,Chen氏混沌电路电路图,Chen氏混沌电路混沌图像(a)x-y相平面图(b)x-z相平面图(c)y-z相平面图,6. L混沌电路,L系统方程描述如下: 当a=36,b=3,c=20时,最大Lyapunov 指数为1.5440304240,系统处于混沌状态。 现对该系统写成: 为确保系统输出电压在运放、乘法器的电源提供电压范围内,变换变量成U1x/10,U2y/10,U3z/10。则有此时系统方程为:,采用运放基本加减电路、积分器、反相器、乘法器构建电路。连接各项电路,则得系统电路。 此时,系统方程如下: L混沌电路原理图,L混沌电路波形,7.统一混沌电路,由于洛仑兹、L以及Chen不论是系统微分式上还是波形上都存在很多类似的特征,统一混沌系统将三者联系在一起 对于一个统一混沌电路,可以将其写成: 其中参数 0,1。统一混沌系统实质上是把Lorenz 系统和新近发现的Chen 系统和L 系统写成了统一的描述形式,它具有如下特性: 1)对所有的 0,1,系统(1)均表现为混沌行为,且比其他的混沌系统结构更加复杂; 2)当 由0 逐渐增加到1 时,系统(1)也有Lorenz 系统经L 系统逐渐过渡到Chen 系统; 3)当 0,0.8)时,系统(1)属于广义Lorenz 系统; (0.8,1时,系统(1)属于广义Chen 系统;当 = 0.8时,系统(1)属于L 系统。三种系统具有不同的拓扑结构。,现在由描述这个系统的微分方程组来设计一个统一混沌电路。为确保系统输出电压在运放、乘法器的电源提供电压范围内,变换变量成U1x/10,U2y/10,U3z/10。则有此时系统方程为:采用运放基本加减电路、积分器、乘法器构建电路,则上式构建的U1、U2、U3项电路依次如下,连接U1、U2、U3项电路,则得统一混沌的电路原理图。此时系统的微分形式为: 统一混沌电路原理图:,a在0,1,系统均处于混沌状态。 当a0时,系统呈现洛仑兹混沌状态 : 当a0.8时,系统呈现L混沌状态 : 当a1时,系统呈现Chen混沌状态:,加 密 算 法,目前主流的加密算法:DES(基本淘汰)AES(Rijndael )RSARC4/RC5Diffie-Hellman (sha 、MD4/MD5)ECC(椭圆曲线加密算法),AES加密算法,RC5加密算法,RC5分组密码算法是1994由麻萨诸塞技术研究所的Ronald L. Rivest教授发明的,并由RSA实验室分析。它是参数可变的分组密码算法,三个可变的参数是:分组大小、密钥大小和加密轮数。在此算法中使用了三种运算:异或、加和循环。 RC5是种比较新的算法,Rivest设计了RC5的一种特殊的实现方式,因此RC5算法有一个面向字的结构:RC5-w/r/b,这里w是字长其值可以是16、32或64对于不同的字长明文和密文块的分组长度为2w位,r是加密轮数,b是密钥字节长度。由于RC5一个分组长度可变的密码算法,为了便于说明在本文中主要是针对64位的分组w=32进行处理的,下面详细说明了RC5加密解密的处理过程:,RSA加密算法,RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够对时间紧张但是又想了解它的同事有所帮助。 RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA以它的三个发明者Ron Rivest, Adi Shamir, Leonard Adleman的名字首字母命名,这个算法经受住了多年深入的密码分析,虽然密码分析者既不能证明也不能否定RSA的安全性,但这恰恰说明该算法有一定的可信性,目前它已经成为最流行的公开密钥算法。RSA的安全基于大数分解的难度。其公钥和私钥是一对大素数(100到200位十进制数或更大)的函数。从一个公钥和密文恢复出明文的难度,等价于分解两个大素数之积(这是公认的数学难题)。当p和q是一个大素数的时候,从它们的积pq去分解因子p和q,这是一个公认的数学难题。比如当pq大到1024位时,迄今为止还没有人能够利用任何计算工具去完成分解因子的任务。因此,RSA从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的缺点还有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits 以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。因此,使用RSA只能加密少量数据,大量的数据加密还要靠对称密码算法。,ECC加密算法,同RSA一样,ECC(Elliptic Curves Cryptography,椭圆曲线密码编码学)也属于公开密钥算法 。椭圆曲线指的是由韦尔斯特拉斯(Weierstrass)方程 y2+a1xy+a3yx3+a2x2+a4x+a6 所确定的平面曲线。若F是一个域,ai F,i=1,2,6。满足式1的数偶(x,y)称为F域上的椭圆曲线E的点。F域可以式有理数域,还可以式有限域GF(Pr)。椭圆曲线通常用E表示。除了曲线E的所有点外,尚需加上一个叫做无穷远点的特殊O。 在椭圆曲线加密(ECC)中,利用了某种特殊形式的椭圆曲线,即定义在有限域上的椭圆曲线。其方程如下: y2=x3+ax+b(mod p) 这里p是素数,a和b为两个小于p的非负整数,它们满足: 4a3+27b2(mod p)0 其中,x,y,a,b Fp,则满足式(2)的点 (x,y)和一个无穷点O就组成了椭圆曲线E。,椭圆曲线离散对数问题ECDLP定义如下:给定素数p和椭圆曲线E,对 Q=kP,在已知P,Q的情况下求出小于p的正整数k。可以证明,已知k和P计算Q比较容易,而由Q和P计算k则比较困难,至今没有有效的方法来解决这个问题,这就是椭圆曲线加密算法原理之所在。 我们描述一个利用椭圆曲线进行加密通信的过程: 1、用户A选定一条椭圆曲线Ep(a,b),并取椭圆曲线上一点,作为基点G。 2、用户A选择一个私有密钥k,并生成公开密钥K=kG。 3、用户A将Ep(a,b)和点K,G传给用户B。 4、用户B接到信息后 ,将待传输的明文编码到Ep(a,b)上一点M(编码方法很多,这里不作讨论),并产生一个随机整数r(rn)。 5、用户B计算点C1=M+rK;C2=rG。 6、用户B将C1、C2传给用户A。 7、用户A接到信息后,计算C1-kC2,结果就是点M。因为 C1-kC2=M+rK-k(rG)=M+rK-r(kG)=M 再对点M进行解码就可以得到明文。 在这个加密通信中,如果有一个偷窥者H ,他只能看到Ep(a,b)、K、G、C1、C2 而通过K、G 求k 或通过C2、G求r 都是相对困难的。因此,H无法得到A、B间传送的明文信息。,混沌系统在图片加密的应用,混沌置换产生混沌序列,具有良好的伪随机性质,用于产生密钥。,