混沌理论及其在密码学的应用摘要:由于混沌系统对初始条件和混沌参数非常敏感以及生成的混沌序列具有非周期性和伪随机性的特性,近年来混沌系统在密码学领域中得到了较多的研究。
介绍了混沌学理论和现代密码学的具体内客,通过对混沌和密码学之间关系的分析。
提出了把混沌用于密码学之中的具体方法和混沌密码系统的框架结构,给出了数字加密中选择混沌系统的原则。
关键词:密码学;混沌;混沌加密正文:计算机从出现到现在,已经从用于计算机转到主要用于信息处理。
Internet 每天为用户提供大量的信息服务。
由于Internet的基础协议不是完全安全的协议。
未经特别加密的信息在网络上传送时,会直接暴露在整个网络上。
现代高性能的计算机、自动分析和截获程序每秒可以搜索数百万个底码,对传统的加密算法构成严重的压力。
信息领域急切希望拥有更安全、方便、有效的信息保护手段。
在过去的十年中,随着对混沌理论研究的不断深入,混沌理论的应用范围也不断扩展。
混沌在密码学中的应用成了热门的研究领域,并提出了大量的混沌加密算法。
大多数模拟混沌的密码使用混沌同步技术通过有噪信道实现秘密通信。
许多研究者都已提出混沌和密码学的密切联系。
混沌的许多基本特征,例如:混频(nlixi 峭)和对初始条件的敏感性都与好的密码的属性——混乱和扩散相联系。
由于混沌理论近几十年得到了极大发展,无数混沌系统都可应用在密码学中,所阻混沌应当成为密码学中的新的丰富资源。
1、现代密码学密码学包含两个互相对立的分支,即密码编码学和密码分析学.前者寻求保证消息保密性或真实性的方法,而后者则研究加密消息的破译或消息的伪造。
一个保密系统由下述几个部分组成:明文消息空间M,密文消息空间C,密钥空间K1和K2,在单钥体制下KI=K2=K.此时密钥K需经安全的密钥信道由发方传给收方;加密变换Ek1∈E,M—C,其中kl∈K1,由加密器完成;解密变换Dk2∈D,C∈M,其中k2∈K2,由解密器实现。
称总体(M,C,K1,K2,Ekl,Dk2)为一保密系统。
对于给定明文消息m∈M,密钥kl∈Kl,加密变换把明文m变换为密文c,即c=f(m,k1)=Ekl(m) (1)接收端利用通过安全的密钥信道传过来的k(单钥体制下)或用本地密钥发生器产生的解密密钥k2∈K2(双钥体制下)控制解密操作D,对收到的密文进行变换得到恢复的明文消息m,即m=g(c.k2)=Dk2(c) (2)而密码分析者,则用其选定的破译变换函数h,对截获的密文c进行变换,得到明文空间的某个元素m’,即m’=h(c) (3)一般,m’≠m,若m’=m,则密码被破译成功。
双钥体制下,若用户A要向用户B发送机密消息m,则A需到公钥本上查到用户B 的公开钥kBl,用它对m作变换,得c=EkBl(m).用户B收到c后,用自己的秘密钥KB2对c解密。
即m=DkB2(C)=DkB2(EkB1(m))因为kB2只有用户B知道.而密码分析者只能以k’对c解密。
所以保密通信得到实现。
双钥体制下,还可以构造一个认证系统:用户B用用户A的公开钥A1对用户A用他的秘密钥A2数字签名的密文c作变换,可得到m,即m=EkA1(c)=EkA1(DkA2(m))若用户B用用户A1的对公钥对伪造的c’作EkAl变换,则不能得到有意义的m,故可认证c确为用户A所发。
2、混沌理论混沌系统是一种高度复杂的非线性动态系统.具有对初始条件和混沌参数非常敏感以及生成的混沌序列具有非周期性和伪随机性的特性。
20世纪60年代人们发现有一些系统,虽然描述它们的方程是确定的,但系统对初值有极强的敏感性,即初值有极微小的变化,将引起系统后来不可预测的改变。
从物理上看运动似乎是随机的。
这种对初值的敏感性,或者说确定性系统内在的随机性就是混沌。
2 .1 描述混沌的数学模型近年来,对混沌现象的实验得到了许多有意义的结果,但更多的结果还是来自对非线性系统数学模型的理论分析和计算机模拟。
描述这些模型的方程有:非线性迭代方程(组)、非线自治微分方程组和差分微分方程(组)。
2.2 系统走向混沌的演化过程非线性系统从非混沌态到混沌态的演化过程有多种形式。
其中最典型的有三类:1)倍周期分叉过程。
设某一非线性系统最初处在定常态。
随着控制参数的增加.在达到某一数值时,系统状态发生突变,出现稳定的周期振荡状态,随着控制参数的不断增加,系统的状态将发生一系列的突变.振荡频谱中出现分频或周期倍增现象。
当系统出现非周期的混乱的振荡状态,即混沌运动状态。
分频现象只有在非线性系统中控制参数的某个阀值上才能出现,它是混沌运动产生的序曲。
2)阵发混沌过程。
对于具有倍周期分叉演化过程的非线性系统,当进人混沌状态以后,在控制参数的某个范围以内构成一个混沌区。
在混沌区内,并不是每一个控制参数对应的都是混沌态。
在控制参数的许多小区问内,对应着周期振荡状态,这些小区间称为混沌区内的周期窗I=I。
在周期窗口附近,状态变量的时间行为表现出时而周期、忽而混乱,随机地在二者之间跳跃。
3)准周期运动到混沌。
如果系统随控制参数增加,在振荡频谱中出现两个不可公约频率,此种运动称为准周期运动。
准周期和锁频交替出现,最终进入混沌状态。
2.3 判断混沌运动的三个主要特征量1)维数。
把维数的概念推广到相空间来研究混沌问题,奇异吸引子的维数是分数维的不会是整数维。
2)熵。
kolmogorov把熵的概念引入动力系统内,用熵值来判断动力系统的有序或混沌程度。
k>0对应于混沌特性;k=0对应于周期特性;k<0对应于随机特性。
3)Lyapunov指数。
在动力系统内,Lyapunov指数是用来检验动力系统是有序或混沌状态的重要判据。
Lyapunov指数的定义表示为t>0时,两条轨道之间的距离不断扩散,各自走自己的轨道轨迹,相互间毫无关系,对应于相空间上的混沌解;当t=0时,两条轨道相互收缩在一起,对应于相空间上一个固定点,即定常解;当t<0时,对应于相空间上的分叉点,即周期解或拟周期解。
3、混沌加密的方法和原理众所周知,加密的一般过程是将明文的信息流变换为可逆的类随机流,解密过程则是对数学变换逆变换的猜测处理过程,将得到的类随机流还原为明文。
显然密文的类随机性强弱决定了还原为明文的过程难易程度。
混沌加密主要是利用由混沌系统迭代产生的序列,作为加密变换的一个因子序列。
混沌加密的理论依据是混沌的自相似性,使得局部选取的混沌密钥集,在分布形态上都与整体相似。
混沌系统对初始状态高度的敏感性,复杂的动力学行为,分布上不符合概率统计学原理,是一种拟随机的序列,其结构复杂,可以提供具有良好的随机性、相关性和复杂性的拟随机序列,使混沌系统难以重构、分析和预测。
事实上,混沌序列对解密防护的重要一点是,即使解密者已掌握产生混沌序列的方程,也难以猜测决定混沌序列的系数参数以及混沌序列的初始值。
因为这些关键值,来源于有理数域(尽管这些关键值是定义在实数域上,但是由于计算机的舍入误差,实际上处理混沌加密序列是在有理数域)在任一个区域上,有理数都是稠密的。
单纯的猜测几乎得不到系数参数。
混沌是非线性系统所产生的复杂的动力学行为,混沌系统对初值条件具有极端的敏感性,因此混沌系统能产生大量的、互不相关的、具有伪随机性的混沌序列。
1989年L.M.Pecora发现,一个混沌系统在满足某种条件下,可以构造成一个同步系统,用此类同步化混沌可以进行通信.同年,Carroll构造出第一个可同步混沌电路。
从此人们开始了将混沌序列用于密码的研究工作。
在Cryptologia、Eurocrypt、IEEE on CAS、Bifurcation & Chaos等杂志和有关会议上发表不少有关混沌密码序列的研究成果。
混沌加密的基本原理是利用混沌系统产生混沌序列作为密钥序列,利用该序列对明文加密,文经信道传输,收方用混沌同步(混沌是确定的,由非线性系统的方程参数和初始条件完全决定,只要系统参数和初始条件相同,可以完全重构出来。
因此,接收方容易构造出与发送方同样的混沌系统,实现同步)的方法将明文信号提取出来实现解密。
1997年,加拿大的一所大学与美国的一家公司签订了第一份合作开发基于混沌同步技术的加密信用卡项目的合同书。
在混沌保密通信系统中,被研究得最多之一的混沌是Logistic混沌映射,简单的Logistic映射能生成跳频码序列,但计算精度的限制使混沌序列的周期不可能无限长,Ghobad Heidari-Bateni等人提出Logistic映射级联以产生更长周期的跳频序列的设计方法,李文化等人提出多级联设计方法,并讨论了Logistic-Kent等级联的混沌跳频序列,凌聪等人提出了每隔logq次(q为频率数目)迭代对Logistic映射序列进行量化产生一个新频率的方法,该方法能降低最大汉明相关值,但平均汉明相关性没有得到改善。
许多人也对Logistic混沌映射产生的跳频码的特性进行了讨论和研究。
4、混沌加密的特点混沌加密主要是基于混沌系统所具有的独特性质:对初值极端的敏感性和具有高度的随机性,故将混沌理论应用于密码学上,具有保密性强,随机性好,密钥量大,更换密钥方便,此外,在抗干扰性、截获率、信号隐蔽等方面同样具有潜在的优势。
尽管混沌加密具有上述特点和优势,但目前混沌理论在密码学上的实际应用中还存在着许多问题。
比如说,混沌系统在计算机或其它数字系统实现时,由于对混沌映射的参数和状态模拟精度的限制,使混沌序列表现出短周期、强相关及局部线性的缺点,因此在较小精度实现下的混沌系统不适合加密。
当前混沌加密方法仍存在以下不足:1)短周期响应现有的混沌序列的研究对于所生成序列的周期性、伪随机性、复杂性、互相关性等的估计是建立在统计分析上,或是通过实验测试给出的,这难以保证其每个实现序列的周期足够大,复杂性足够高,因而不能使人放心地采用它来加密。
例如,在自治状态下,输入信号为零时,加密器表现为有限周期响应。
不同的初始状态对应于不同的周期,其周期长度可能很短。
这一缺点在某种程度上降低了混沌加密系统的保密性。
2)有限精度效应混沌序列的生成总是要用有限精度器件来实现的,从而混沌序列生成器可归结为有限自动机来描述,这样,混沌生成器否能超越已有的用有限自动机和布尔逻辑理论所给出的大量研究成果,是一个很值得研究的课题。
大多数在有限精度下实现的混沌系统,其性质会与其理论结果大相径庭,从而使许多基于混沌系统的应用无法实现。
甚至有学者认为,有限精度效应是目前混沌理论走向应用中出现的一大难题。
3)实现精度与保密性的矛盾对于分段线性的混沌映射加密系统,相邻的两个状态可能落在同一条直线段上,这样,在数字实现精度很高的情况下,解密者就可利用此特点,在知道少量的明文—密文对照的情况下轻易地恢复出具有足够精度的密钥。