国内外分组密码理论与技术的研究现状及发展趋势
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
国内外分组密码理论与技术的研究现状及发展趋势
1 引言
密码(学)技术是信息安全技术的核心,主要由密码编码技术
和密码分析技术两个分支组成。密码编码技术的主要任务是寻求产
生安全性高的有效密码算法和协议,以满足对数据和信息进行加密
或认证的要求。密码分析技术的主要任务是破译密码或伪造认证信
息,实现窃取机密信息或进行诈骗破坏活动。这两个分支既相互对
立又相互依存,正是由于这种对立统一的关系,才推动了密码学自
身的发展[6]。目前人们将密码(学)理论与技术分成了两大类,
一类是基于数学的密码理论与技术,包括分组密码、序列密码、公
钥密码、认证码、数字签名、Hash函数、身份识别、密钥管理、
PKI技术、VPN技术等等,另一类是非数学的密码理论与技术,包括
信息隐藏、量子密码、基于生物特征的识别理论与技术等。
在密码(学)技术中,数据加密技术是核心。根据数据加密所
使用的密钥特点可将数据加密技术分成两种体制,一种是基于单密
钥的对称加密体制(传统加密体制),包括分组密码与序列密码,
另一类是基于双密钥的公钥加密体制。本文主要探讨和分析分组密
码研究的现状及其发展趋势。
2 国内外分组密码研究的现状
2.1 国内外主要的分组密码
美国早在1977年就制定了本国的数据加密标准,即DES。随着
DES的出现,人们对分组密码展开了深入的研究和讨论,已有大量
的分组密码[1,6],如DES的各种变形、IDEA算法、SAFER系列算
法、RC系列算法、Skipjack算法、FEAL系列算法、REDOC系列算
法、CAST系列算法以及Khufu,Khafre,MMB,3-
WAY,TEA,MacGuffin,SHARK,BEAR,LION,CA.1.1,CRAB,Blowfish,GOST,SQUA 算法和AES15种候选算法(第一轮),另有NESSIE17种候选算法
(第一轮)等。
2.2 分组密码的分析
在分组密码设计技术不断发展的同时,分组密码分析技术也得
到了空前的发展。有很多分组密码分析技术被开发出来,如强力攻
击(穷尽密钥搜索攻击、字典攻击、查表攻击、时间存储权衡攻
击)、差分密码分析、差分密码分析的推广(截段差分密码分析、
高阶差分密码分析、不可能差分密码分析)、线性密码分析、线性
密码分析的推广(多重线性密码分析、非线性密码分析、划分密码
分析)、差分线性密码分析、插值攻击、密钥相关攻击、能量分
析、错误攻击、定时攻击等等。
其中,穷尽密钥搜索攻击是一种与计算技术密不可分的补素密码分
析技术,也是最常用的一种密码分析技术。通过这种技术,可以破
译DES的算法。在DES最初公布的时候,人们就认为这种算法的密钥
太短(仅为56bit),抵抗不住穷尽密钥搜索的攻击。因此,1997
年1月28日,美国colorado的程序员Verser从1997年3月13日起,
在Internet上数万名志愿者的协同下,用96天的时间,于1997年6
月17日用穷尽密钥方法成功地找出了DES的密钥,证明了依靠Internet的分布式计算能力和用穷尽密钥搜索攻击的方法可以破译DES。一年以后,1998年7月17日,电子边境基金会(EFF)使用一台25万美元的电脑,也用穷尽密钥搜索攻击的方法,仅花费56个小时就破解了DES。之后,1999年,在RSA会议期间,EFF也在不到24小时的时间内用穷尽密钥攻击的方法找了DES的一个密钥。可见,DES的加密已失去了效力,寻找DES的替代者已到了刻不容缓的地步。
2.3 AES新的数据加密候选标准
NIST在1997年1月2日正式宣布了NIST计划,该计划公开片集和评估新的数据加密候选标准,即AES(Advanced Encryption Standard),其条件是,为进入AES程序,开发者必须承诺放弃被选中算法的知识产权。
AES的基本要求是:必须(至少)支持128bit分组加密和
128/192/256bit密钥(密钥空间分别有
3.4×1038/6.2×1057/1.1×1071密钥),要比三重DES快及至少与三重DES一样安全。
NIST计划的评判规则大体分为安全性、代价、算法实现特性三大部分。其中安全性是评判算法最重要的因素,包括:算法的抗分析能力、稳固的数字基础、算法输出的随机性,以及与其它算法的对比特性。代价是指授权合法使用的代价,如在多种平台上计算的效率(速度)和占用存储器的数量。而算法实现特性则是指灵活性、软硬件兼容性和简单性。根据上述评判规则,NIST对所有
的 候选算法进行了综合评判:
(1)1998年8月20日NIST召开第一次AES候选会议,公布了15个官方AES候选算法,即:Rijndael、MARS、RC6、Serpent、Twofish、SAFER+、CAST-256、CRYPTON、E2、LOKI 97、DEAL、Magenta、PROG、DFC和HPC。根据研究和分析的结果,前9种算法都有很好的安全性,而后6种则相对于前9种存在着某些设计上的缺陷。这15个分组密码的背景、整体结构、设计特点及有效性的简要概括,如表1所示。
(2)1999年8月,NIST从上述15个候选算法中筛选出了5个,它们是:Rijndael、MARS、RC6TM、Serpent和Twofish。人们为了比较出最终的算法发表了许多论文,公布了在量的统计数据,评判出了每个算法的优点和弱点。
(3)2000年10月2日,NIST宣布获胜者为Rijndael算法,这一算法的开发者是比利时的密码专家Vincent Rijmen和Joan Daemen。Rijndael的原形是Square密码算法,设计的策略是宽轨迹策略(Wide Trail Strategy),是针对差分密码/线性密码分析提出的,最大的优点是可以给出算法的最佳差分特征的概率及最佳线性逼近偏差的界,由此可以分析出算法抗击差分分析及线性分析的能力。Rijndael是一个迭代分组密码,数据的分组与密钥长度是可以变化的,但为了满足AES的要求,分组长度设为128bit,密