文档介绍:对称加密算法(1)胡建斌北京大学信息科学技术学院E-mail:******@://./~hjbin2013-(3)(3)数据加密标准(DataEncryptionStandard,DES)(3)DES的产生(1)1973年5月15日,NBS(NationalSecurityAgency)开始公开征集标准加密算法,并公布了它的设计要求: (1)算法必须提供高度的安全性 (2)算法必须有详细的说明,并易于理解 (3)算法的安全性取决于密钥,不依赖于算法 (4)算法适用于所有用户 (5)算法适用于不同应用场合 (6)算法必须高效、经济 (7)算法必须能被证实有效 (8)算法必须是可出口的第三条商用密码技术属于国家秘密。国家对商用密码产品的科研、生产、销售和使用实行专控管理第六条商用密码的科研成果,由国家密码管理机构组织专家按照商用密码技术标准和技术规范审查、鉴定第七条商用密码产品由国家密码管理机构指定的单位生产。未经指定,任何单位或者个人不得生产商用密码产品《商用密码管理条例》(3)DES的产生(2)1974年8月27日,NBS开始第二次征集,IBM提交了算法LUCIFER,该算法由IBM的工程师在1971~1972年研制1975年3月17日,NBS公开了全部细节1976年,NBS指派了两个小组进行评价1976年11月23日,采纳为联邦标准,批准用于非军事场合的各种政府机构1977年1月15日,“数据加密标准”FIPSPUB46发布(DES,DataEncryptionStandard)(3)DES的应用1979年,美国银行协会批准使用1980年,美国国家标准局(ANSI)赞同DES作为私人使用的标准,称之为DEA()1983年,国际化标准组织ISO赞同DES作为国际标准,称之为DEA-1该标准规定每五年审查一次最近的一次评估是在1994年1月,已决定1998年12月以后,(3)分组密码的一般设计原理分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)(3)设计原则--混淆(confusion)混淆(confusion):密文的统计特性与密钥的取值之间的关系尽量复杂密码算法应当保证密钥、明文和密文的依赖关系相当复杂,混淆程度主要用非线性度来度量非线性度的概念最初由Pieprzyk等1988年引入,它是密码安全代换盒的主要设计准则之一,(3)设计原则--扩散(Diffusion)扩散(Diffusion):明文的统计结构被扩散消失到密文的长程统计特性,使得明文和密文之间的统计关系尽量复杂密码算法应保证有语言多余度的明文的统计结构散射到相当长的一段统计中算法应使明文的简单结构和密文的简单结构之间不存在统计关系不同的加密函数之间不存在简单关系扩散程度通常用明文和密钥的雪崩特性(有时用扩散特性)来度量在相同明文条件下,密钥的1比特改变将根本改变密文在相同密钥条件下,明文的1比特改变也将根本改变密文根本改变,(3)实现原则软件实现使用子块和简单的运算。密码运算在子块上进行,要求子块的长度能自然地适应软件编程,如8、16、32比特等应尽量避免按比特置换,在子块上所进行的密码运算尽量采用易于软件实现的运算最好是用处理器的基本运算,如加法、乘法、移位等硬件实现加密和解密的相似性,即加密和解密过程的不同应仅仅在密钥使用方式上,以便采用同样的器件来实现加