您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > Security_04_密码技术-现代密码学-DES-智能信息安全
智能信息安全IntelligentInformationSecurity孙松林北京邮电大学Email:slsun@bupt.edu.cn密码技术–现代密码学1,密码学简介2,密码系统模型3,古典密码4,对称密钥(单钥)密码体制5,非对称密钥(公钥)密码体制现代密码学分类对称密钥密码(单钥密码)DES-3DESFEAL(快速数据加密算法)IDEAAES非对称密钥密码(公钥密码/双钥密码)RSA古典密码学特点要求的计算强度小DES之前以字母表为主要加密对象置换和代替技术数据安全基于算法的保密密码分析方法基于明文的可读性以及字母及其组合的频率特性密码系统模型现代密码学中分组密码算法设计指导原则Diffusion(发散)小扰动的影响波及到全局明文或密钥的一位影响密文的多位,密文没有统计特征Confusion(混淆)强调密钥的作用增加密文与明文及密钥之间关系的复杂性无法从数学上描述,或从统计上去分析结构简单、易于分析4.对称密钥密码体制对称密钥密码的历史DESDES概述Feistel结构图S-DESDES多重DESFEALIDEAAES对称密钥密码的历史美国国家标准局(NBS:NationalBureauofStandards)1973年开始研究除国防部外的其它部门的计算机系统的数据加密标准(DES:DataEncryptionStandard)于1973年5月15日和1974年8月27日先后两次向公众发出了征求加密算法的公告。1975年3月17日DES首次被公布在联邦记录中。对称密钥密码的历史1977年1月15日美国政府决定采纳IBM公司设计的方案作为非机密数据的正式数据加密标准DES,被正式批准并作为美国联邦信息处理标准,即FIPS-46,同年7月15日开始生效。该方案是在1971年,由HorstFeistel领导的IBM密码研究项目组研究出的LUCIFER算法,并已应用于商业领域。对称密钥密码的历史规定日后由美国国家保密局(nationalsecurityagency,NSA)作评估,并重新批准它是否继续作为联邦加密标准。在1994年1月的评估中,美国决定1998年12月以后将不再使用DES。对称密钥密码的历史1997年4月15日,美国NIST(NationalInstituteofStandardsandTechnology)发起征集AES(advancedencryptionstandard)的活动,并为此成立了AES工作小组。此次活动的目的是确定一个非保密的、可以公开技术细节的、全球免费使用的分组密码算法,以作为新的数据加密标准。1997年9月12日,美国联邦登记处公布了正式征集AES候选算法的通告。对称密钥密码的历史1998年8月12日,在首届AES候选会议(firstAEScandidateconference)上公布了AES的15个候选算法,任由全世界各机构和个人攻击和评论,这15个候选算法是CAST256、CRYPTON、E2、DEAL、FROG、SAFER+、RC6、MAGENTA、LOKI97、SERPENT、MARS、Rijndael、DFC、Twofish、HPC。对称密钥密码的历史1999年3月,在第2届AES候选会议(secondAEScandidateconference)上经过对全球各密码机构和个人对候选算法分析结果的讨论,从15个候选算法中选出了5个:RC6、Rijndael、SERPENT、Twofish和MARS。对称密钥密码的历史2000年4月13日至14日,召开了第3届AES候选会议(thirdAEScandidateconference),继续对最后5个候选算法进行讨论。2000年10月2日,NIST宣布Rijndael作为新的AES。对称密钥密码的历史Rijndael由比利时的JoanDaemen和VincentRijmen设计,开发者提出以下几种发音供选择“ReignDahl”,“Raindoll”和“RhineDahl”。4.对称密钥密码体制对称密钥密码的历史DESDES概述Feistel结构图S-DESDES多重DESFEALIDEAAESDES概述1973/1974年提出加密算法要达到的目的(通常称为DES密码算法要求)主要为以下四点:(1)提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改;(2)具有相当高的复杂性,使得破译的开销超过可能获得的利益,同时又要便于理解和掌握;(3)DES密码体制的安全性应该不依赖于算法的保密,其安全性仅以加密密钥的保密为基础;(4)实现经济,运行有效,并且适用于多种完全不同的应用。DES概述1977年由美国的标准化局(NBS,现为NIST)采纳64位数据分组、56位密钥历史:IBM在60年代启动了LUCIFER项目,当时的算法采用128位密钥改进算法,降低为56位密钥,IBM提交给NBS(NIST)4.对称密钥密码体制对称密钥密码的历史DESDES概述Feistel结构图S-DESDES多重DESFEALIDEAAESFeistel结构图Feistel结构定义加密:Li=Ri-1;Ri=Li-1F(Ri-1,Ki)解密:Ri-1=LiLi-1=RiF(Ri-1,Ki)=RiF(Li,Ki)Feistel结构分析数据分组Blocksize(64128)密钥长度Keysize(56128~256)轮数Numberofrounds(16)该结构的关键:子密钥SubkeygenerationF函数Roundfunction(F)Feistel结构优点易于软硬件实现结构简单易于分析4.对称密钥密码体制对称密钥密码的历史DESDES概述Feistel结构图S-DESDES多重DESFEALIDEAAESS-DESSimplifiedDES方案,简称S-DES方案。它是一个供教学而非安全的加密算法,它与DES的特性和结构类似,但参数小。加密S-DES方案示意图10bit密钥解密8bit明文P108bit明文IP移位IP-1P8fkfkSWSW移位P8fkfkIPIP-18bit密文8bit密文K2K2K1K1IP:InitialPermutation初始置换SW:交换函数P10:10bit置换P8:8bit置换IP-1*fk2*SW*fk1*IP也可写为密文=IP-1(fk2(SW(fk1(IP(明文)))))其中K1=P8(移位(P10(密钥K)))K2=P8(移位(移位(P10(密钥K))))解密算法的数学表示:明文=IP-1(fk1(SW(fk2(IP(密文)))))S-DES加密算法的数学表示S-DES加解密算法涉及五个函数:(1)初始置换IP(initialpermutation)(2)复合函数fk1,它由密钥K1确定,具有置换和代换的运算。(3)交换函数SW(4)复合函数fk2,它由密钥K2确定,具有置换和代换的运算。(5)初始置换IP的逆置换IP-1初始置换IP函数:IP=1234567826314857末端算法的置换为IP的逆置换:IP-1=1234567841357286易见IP-1(IP(X))=XS-DES--IP函数S-DES--复合函数fk复合函数fk,是加密方案中最重要的部分,它可表示为:fk(L,R)=(LF(R,SK),R)其中L、R为8位输入,左右各为4位。F为从4位集到4位集的一个映射,并不要求是单射。SK(SubKey)为子密钥,左图中为K1。IPE/P+S0S1P4+LR4K1844F4fkS-DES加密图IPE/P+S0S1P4+LR4K1844fkF4IP:InitialPermutation初始置换E/P:扩张/置换S0、S1:S盒P4:4bit置换8bit明文22S-DES加密图(续)E/P+S0S18K2P4+IP-18-bit密文4844fkF44228SWSW:交换函数S-DES--F函数1,E/P(R)2,与K1异或运算3,S0,S14,P4E/P+S0S1P4R4K1844F22S-DES--E/P运算输入一个4位数(n1,n2,n3,n4),进行扩张/置换(E/P)运算:41232341直观表现形式为:n4,n1,n2,n3n2,n3,n4,n1S-DES--子密钥异或运算8-bit子密钥K1=(k11,k12,k13,k14,k15,k16,k17,k18)与E/P的结果作异或运算得:n4+k11,n1+k12,n2+k13,n3+k14n2+k15,n3+k16,n4+k17,n1+k18把它们重记为8位:P0,0P0,1P0,2P0,3P1,0P1,1P1,2P1,3上述第一行输入进S盒S0,产生2位的输出;第二行输入进S盒S1,产生2位的输出。S-DES--S0、S1运算2313312001232301321032100S3012010331023210321032101SS盒按下述规则运算:将第1和第4的输入比特做为2位数,指示为S盒的一个行;将第2和第3的输入比特做为S盒的一个列,如此确定为S盒矩阵的(i,j)数。例如:(P0,0,P0,3)=(00),(P0,1,P0,2)=(10)由此确定S0中的第0行2列(0,2)其系数为3,因此记为(11)输出。S-DES--P4置换12342431S-DES--密钥的生成设10bit的密钥为(k1,k2,…,k10)置换P10(k1,k2,…,k10)=(k3,k5,k2,k7,k4,k10,k1,k9,k8,k6)置换P8(k1,k2,…,k10)=(k6,k3,k7,k4,k8,k5,k10,k9)LS-1为循环左移1位,LS-2为循环左移2位例:按照上述条件,若K选为(1010000010),产生的两个子密钥分别为K1=(10100100)K2=(01000011)P10LS-1LS-1LS-2LS-2P8P8K18K25555855加密S-DES方案示意图10bit密钥解密8bit明文P108bit明文IP移位IP-1P8fkfkSWSW移位P8fkfkIPIP-18bit密文8bit密文K2K2K1K1课堂练习用S-DES算法对下列明文数据进行加密:Plaintext(8bit):00010111密钥10bit,生成规则为班内序号,不足补零!如:班内序号为10号,则密钥为0000001010请写出各步步骤!4.对称密钥密码体制对称密钥密码的历史DESDES概述Feistel结构图S-DESDES多重DESFEALIDEAAESDES加密过程如何解密?DES轮加密的简图Li=Ri-1Ri=Li-1F(Ri-1,Ki)i=1,2,…,16Li-1Ri-1F+LiRiKiDES轮加密S-DES的F函数1,E/P(R)2,与K1异或运算3,S0,S14,P4E/P+S0S1P4R4K1844F22DES的关键/重要技术IP密钥F函数DES算法--IPDES算法--逆IPDES算法--IP&逆IP5850423426181026052443628201246254463830221466456484032241685749413325179159514335271911361534537292113563554739312315740848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725输入的第58位作为第1位输入的第50位作为第2位输入的第42位作为第3位输入的第40位作为第1位输入的第8位作为第2位输入的
本文标题:Security_04_密码技术-现代密码学-DES-智能信息安全
链接地址:https://www.777doc.com/doc-43873 .html