混沌系统具有类随机性、对参数和初始值的极度敏感性等特征,这些特征与密码学有着一定的联系。1949年,C.E.Shannon提出了密码学中用于指导密码设计的两个基本概念:扩散(Diffusion)和置乱(Confusion)。扩散是将明文的信息尽可能地分散到密文中,以便隐藏明文的分布结构。置乱则是用于掩盖明文、密文和密钥之间的关系,使密文的统计关系变得尽可能复杂。混沌的轨道混乱特性对应于传统密码的扩散特性,混沌的类随机性和对参数的敏感性对应于传统密码系统的置乱特性。混沌和密码学之间的联系和相似性启示人们将混沌应用于密码学领域,但是,混沌毕竟不等于密码学,它们之间是存在差别的,表1.1给出了混沌理论与传统密码算法之间的相似点和不同之处。
1989年,英国学者R.Matthews首次尝试将非线性理论引入加密中,提出了“混沌密码”的概念,他给出了一种基于Logistic映射的混沌序列加密方案。从此,数目众多的混沌密码学研究成果不断涌现出来。总体上说,基于混沌的对称加密算法主要包括序列密码和分组密码两种形式,序列密码使用混沌系统生成的伪随机密钥序列直接用于掩盖明文,分组密码使用明文和密钥作为初始条件和控制参数,通过迭代或反向迭代多次的方法得到密文。
表1.1 混沌理论与密码学的相似点和不同点
1.4.2.1 混沌序列密码
序列密码又叫流密码,主要设计思想是密钥序列与明文序列逐位进行操作和运算,其安全性主要依赖于密钥序列的随机性。混沌系统的长期行为是不可预测的,产生的序列具有很好的置乱和遍历特性,而且,混沌系统是确定性的系统,产生的序列是重复可再生的,因此,将混沌系统应用于序列密码是可行的。
基于混沌系统实现序列密码时,人们首先利用混沌系统产生一个伪随机序列,然后再将产生的伪随机序列与明文进行异或等非线性运算得出密文。解密的过程和加密过程类似,利用相同的伪随机序列对密文进行异或运算或其他非线性运算得到明文。这种基于混沌的序列密码加密算法的关键问题是如何使用混沌系统产生安全性较高的伪随机序列,即如何设计伪随机序列发生器(Pseudo-Random Number Generator,PRNG)。PRNG的设计主要包括两种方法,一是从直接混沌迭代数据的二进制比特中抽取,二是将混沌系统迭代数据二值化或多值化,比如将混沌系统的值域分为n个区间,分别表示为0,1,2,…,n-1,每次混沌系统迭代后的数值落入哪个区间,伪随机序列发生器的输出就是该区间的编号。当然区间划分得越多,密钥空间包含迭代系统的轨道信息就越多,安全性也就下降。如果区间划分较少,那么每次迭代所产生的密钥空间就会变小,加密速度也就越慢。因此n值的大小需要根据加密速度和安全性要求综合衡量确定。
然而,混沌序列在离散化过程中会产生性质退化问题,可以采用一些方法来增强伪随机序列的随机性,这些方法包括:
(1)选择随机性更好的混沌系统,能够产生更广阔的混沌区域、具有均匀的密度函数,如分段线性映射、Logistic映射和Chebyshev映射等。
(2)通过扰动的方式增大混沌序列的周期。(www.xing528.com)
(3)使用多个独立混沌系统的混沌轨道,通过一定的规则组成新的伪随机序列。
(4)采用时空混沌系统的耦合方式产生具有更长周期的混沌序列。
1.4.2.2 混沌分组密码
分组密码是指将明文序列划分成长度相同的组,每组分别在不同密钥的控制下加密成等长的密文序列,要使这个加密过程变得足够安全,就需要对明文进行充分的置乱和扩散。混沌对初始值及参数的敏感性便于进行加密过程的置乱,混沌良好的伪随机性利于进行扩散,因此,混沌系统符合分组密码设计的原则。分组密码在密码学中占有重要的地位,并且是很多密码协议和认证协议的重要组成部分,广泛地应用于数据的加密、认证等操作中。
分组密码的定义有多个,其中比较典型的一种定义被称为Menezes定义。
定义1.5 分组密码的Menezes定义。分组密码是指函数E∶Vn×κ→Vn,n为分组长度,κ为密钥集合,对于密钥K∈κ,明文P,其加密函数E(P,K)=EK(P)为从集合Vn到Vn的可逆映射,得到密文C,其解密函数D(K,C)=DK(C)为加密函数E的逆函数。
由此可见,分组密码是通过一个条件映射E把一个固定长度为n的明文分组映射为长度相同的密文分组,即分组密码就是一个作用在n比特上的布尔置换集合。
基于混沌系统构造分组加密算法最早是由T.Habutsu等于1991年提出的。基于正向迭代的混沌分组密码正向迭代一个或者多个混沌系统,并使用得到的置换矩阵来置乱明文,实现对明文的置乱,然后再采用其他替换算法来扩散明文,多次重复该过程即可得到密文。这类分组加密方法一般应用在图像加密上,如采用二维混沌映射的数值化结果对图像进行空域变换,常用的二维映射有:面包师(Baker)映射、猫(Cat)映射和标准(Standard)映射、Logistic映射。当然,只对图像进行空域上的变换不能保证图像加密的安全性,将空域变换和频域变换相结合进行图像加密是当前的一个研究热点。基于逆向迭代的混沌分组密码的基本思想是根据混沌映射的逆向映射进行迭代,将明文作为逆向映射的输入,迭代的结果即为密文。正向迭代该混沌映射即可获得解密的结果。此外,还有一种混沌分组密码是与传统密码学结合起来使用的,这类混沌分组密码通常采用传统分组密码的一些设计思想,一般仅在密钥的产生、轮密钥的分配和S盒的构造中使用混沌系统。
计算机网络和多媒体技术的迅速发展在给人们带来方便的同时,也带来了诸多的安全问题。由于数字图像具有易于拷贝和发布的特点,我们在使用数字图像过程中面临的主要安全问题包括:图像内容的泄露、版权的认证和图像数据的完整性。在数字图像保护领域,数字水印技术和图像加密技术逐渐成为研究热点。数字水印技术在图像中加入水印信息,达到对图像的知识产权进行保护的目的。图像加密技术试图隐藏图像中包含的有用信息,为数字图像提供基于内容的保护。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。