欢迎来到天天文库
浏览记录
ID:10793434
大小:91.50 KB
页数:3页
时间:2018-07-08
《分组密码体制简介》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、分组密码体制简介 分组密码体制也具有简捷、快速的特点,并且容易标准化,使其成为软硬件加密的主流算法。目前主流的分组密码有:DES、IDEA…… .1.分组密码的特点 与序列密码不同,分组密码是将明文序列划分成等长的分组(Block),对每一组用同一加密算法和同一密钥进行加密。分组密码有其自身的优点,首先分组密码容易被标准化,因为在今天的数据网络通信中,信息通常是被成块的处理和传输的。其次,使用分组赌东道密码容易实现同步,因为一个密码组的传输错误不会影响到其它的分组,丢失一个密文组不会对随后组的解密产生影响。这就
2、是说,传输错误不会扩散。而这些方面恰恰是序列密码的最大缺点。分组密码与序列密码相比的一个缺点就是算法庞大一些,需要更多的计算资源。分组密码的另一大缺点是其安全性很难被证明。尽管“可证明安全性”的研究发展很快,但目前的分组密码大多是“看来安全的”,还没有一个分组密码被证明是真正安全的,至多证明了局部安全性。这其中的原因是:因商业化而要求分组密码算法的细节全部暴露,因此对分组密码的攻击类型很多,安全性概念也就很多,有人为了统一这些安全性概念,甚至引入了伪随机性和超伪随机性,它们是用概率图灵机来描述的,在实际设计和分析中很难应用。 2.
3、分组密码的设计准则一、安全性准则 对以下的安全性的描述总是基于以下的假设:加密体制(包括算法的细节)是公开的;安全性完全依赖于密钥;信道是不安全的,即攻击者可以任意的截取密文;攻击者有时也可以截取一些“废弃”的明文。 (1)分组长度和密钥长度:当明文分组长度为n比特时,至多需要2n个明文-密文对就可以彻底破解密钥。同理当密钥长度为n比特时,对一个截获的密文,至多需要试验2n个密钥就可以破解了密文。因此从安全性角度来考虑,明文分组长度的密钥长度因尽可能的大。 (2)混淆性: 所设计的密码应使得明文、密文、密钥之间的
4、依赖关系相当复杂,以至于这种依赖关系对密码分析者来说是无法利用的。密码分析者利用这种依赖关系的方法非常多,比如差分密码分析、线性密码分析等,因此混淆性也是一个非常重要的原则。 (3)扩散性:所设计的密码应使得密钥的每一位数字影响密文的许多位数字,以防止对密钥的逐段破解;明文的每一位数字也影响密文的许多位数字,以便最充分的隐藏明文的统计特征。对扩散性可以有许多种理解,比如“粘连性”指的是明文、密文、密钥每一位都互相依赖;“不连续性”或“雪崩性”指的是当改变明文的任何一个比特时,对应密文改变的比特的个数应是一个随机变量,其平均值
5、是分组长度的一半。 (4)非线性度(抗线性密码分析强度):这一项属于混淆性。有一个基本数学原理:如果明文和密文的关系是n维线性关系,且系数是密钥,则n个明文-密文对(而不是2n个)就可以破解密钥;如果明文与密文的关系是n维r次函数关系,且系数是密钥,则nr 个明文-密文对就可以破解密钥;如果虽然次数r较大,但明文与密文的关系“非常逼近”一个n维线性关系,则n个明文-密文对就可以“基本上”破解密钥。这就是线性密码分析的思想,抗线性密码分析的强度就是非线性度。 (5)抗差分密码分析强度:这一项也属于混淆性。如果明文差分与密
6、文差分的关系比较简单,则可以进行差分密码分析,这种分析或许能部分的解密密钥。 (6)安全强度的稳定性: 还可以给出许多有关安全性的概念。概括地说安全性就是从任何角度都难以攻破。其中两个最重要的角度是:①对于一个正在使用的加密算法,即使攻击者获得“许多”精心选择的明文-密文对,他仍无法“接近”密钥,即可以抵抗选择明文攻击。②即使攻击者获得“许多”精心选择的明文-密文对,他仍无法“接近”任一个新密文所对应的明文。 这里使用的“明文、密文、密码之间的依赖关系”这个术语,传统上的依赖关系是指函数关系和统计关系。从安全
7、性出发,希望函数关系尽可能复杂,其含义是使得精确破译尽可能困难;希望统计关系尽可能复杂,其含义是使得逼近破译尽可能困难。 二、简捷性准则 简捷性指的是分组密码算法在满足安全性要求的同时尽可能的简单快速。如果分组密码算法用软件来实现,则要求子块长度尽可能自然的适应软件编程,比如8,16,32,64比特等。在软件实现中,按比特置换通常是难以实现的,因此应该尽量避免使用它。子块上的运算应该是易于软件实现的运算,最好使用一些标准的处理器所具有的一些基本指令,比如加法、乘法、移位等。如果分组密码算法用硬件来实现,则尽量使用规则结构,以
8、便用超大规模集成电路(VLSI)来实现。 三、有效性准则 四、透明性和灵活性准则 透明性即要求算法是可证明安全的。如果使用迭代分组密码,其安全强度于迭代次数的关系尽可能明确和容易分析。这就要求算法尽可能使用通用的部件,避免黑盒。 灵活
此文档下载收益归作者所有