网络安全—技术与实践(第2版)刘建伟王育民编著清华大学出版社普通高等教育“十一五”国家级规划教材教育部2011年精品教材课件制作人声明n 本课件总共有17个文件,版权属于刘建伟所有,仅供选用此教材的教师和学生参考。n 本课件严禁其他人员自行出版销售,或未经作者允许用作其他社会上的培训课程。n 对于课件中出现的缺点和错误,欢迎读者提出宝贵意见,以便及时修订。课件制作人:刘建伟2013年9月23日 单钥加密体制(第1讲)密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第1讲)密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一一、密码学基本概念明文需要秘密传送的消息。密文明文经过密码变换后的消息。加密由明文到密文的变换解密从密文恢复出明文的过程。破译对明文进行加密时采用的一组规则。加密算法对密文进行解密时采用的一组规则。解密算法从密文恢复出明文的过程。密钥加密和解密时使用的一组秘密信息。一个密码系统可以用以下数学符号描述:S={P,C,K,E,D}P=明文空间C=密文空间K=密钥空间E=加密算法D=解密算法当给定密钥k∈K时,加解密算法分别记作Ek、Dk,密码系统表示为Sk={P,C,k,Ek,Dk}C=Ek(P)P=Dk(C)=Dk(Ek(P))一、密码学基本概念1、密码系统组成若Ke=Kd,则加密算法称为单钥体制(也称为对称加密体制,或者私钥加密体制);若Ke≠Kd,则加密算法称为双钥体制(也称为非对称加密体制,或者公钥加密体制)。加密解密密文密钥信道一、密码学基本概念2、密码体制的分类加密密钥Ke解密密钥Kd对于单钥加密体制,可以按照其加密/解密运算的特点,分为流密码(StreamCipher)和分组密码(BlockCipher)一、密码学基本概念3、单钥体制的分类分组密码:对数据分组进行处理。流密码:数据逐比特加密,即数据流与密钥流逐比特进行异或(XOR)运算;密码学基本概念小结单钥体制分组密码流密码双钥体制分组密码密码体制密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第1讲)试图破译单条消息试图识别加密的消息格式,以便借助直接的解密算法破译后续的消息试图找到加密算法中的普遍缺陷(无须截取任何消息)二、密码分析(破译)二、密码分析(破译)1、密码分析的条件与工具计算机语言特性已知加密算法截取到明文、密文中已知或推测的数据项数学或统计工具和技术技巧与运气二、密码分析(破译)2、密码分析类型无条件安全:无论提供多少密文,若密文中所包含的信息不足以唯一地决定对应的明文,那么该密码体制就是无条件安全的。除了一次一密(one-timepadding)的方案外,没有无条件安全的其他算法。二、密码分析(破译)3、加密方案的安全性安全性体现在破译的成本超过加密信息的价值破译的时间超过该信息有用的生命周期二、密码分析(破译)4、攻击的复杂性决定了密码算法的安全性发展开端处理复杂性(processingcomplexity) 完成攻击所需要的时间存储需求(storagerequirement) 进行攻击所需要的数据量 用作攻击输入所需要的数据数据复杂性(datacomplexity)二、密码分析(破译)5、密钥搜索所需平均时间密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第1讲)三、密码学的历史密码学的演进单表代替-多表代替-机械密(恩格玛)-现代密码学(对称与非对称密码体制)-量子密码学密码编码学和密码分析学应用领域军事、外交、商业、通信。Phaistos圆盘,一种直径约为160mm的Cretan-Mnoan粘土圆盘,始于公元前17世纪。表面有明显字间空格的字母,至今还没有破解。三、密码学的历史三、密码学的历史20世纪早期密码机密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第一讲)已经成为历史,但被传统密码学所借鉴;加解密都很简单,易被攻破;属于对称密码体制;包括置换密码、单表代换密码、多表代换密码等。四、古典密码1、古典密码学置换密码用加密置换去对消息进行加密代换密码明文中的字母用相应的密文字母进行替换单表代换密码多表代换密码多表密码四、古典密码2、古典密码的种类单表代换密码举例m=“Casercipherisashiftsubstitution”c=“FDVHUFLSHULVDVKLIWVXEVWLWXWLRO”明文:abcdefghijklmnopqrstuvwxyz密文:DEFGHIJKLMNOPQRSTUVWXYZABC四、古典密码3、古典密码——代换密码用加密置换去对消息进行加密举例:E=(1,2,3,4)D=(2,1,4,3)M=“置换密码”C=E(M)=“换置码密”四、古典密码4、古典密码——置换密码1517142443124419614113614113614112152551018141510184维吉尼亚密码是多表密码中昀知名的密码。令密钥串是gold,利用编码规则A=0,B=1,C=2,…,Z=25。这个密钥串的数字表示是:(6,14,11,3)。设明文为:proceedmeetingasagreed8136018061744336141136141136141119201121620271017密文为:vfzfksopkseltuguchkr注意:模数=26四、古典密码5、古典密码——多表密码密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第一讲)历史悠久,昀古老与昀现代的密码学基本特点:加密和解密采用同一个密钥,所以又被称为对称密码体制。letC=Ciphertext,P=Plaintext,kiskey,E()/D()istheencryption/decryptionfunction,thenC=E(P,k),P=D(C,k)基本技术替换、置换和移位五、传统密码学(对称算法)1、对称加密体制 letC=Ciphertext,P=Plaintext,kiskey,E()/D()istheencryption/decryptionfunction,thenC=E(P,k),P=D(C,k)对称密码技术又称单钥密码技术,即同用一个密钥去加密和解密数据。明文abc加密器密文#@&解密器相同明文abc五、传统密码学(对称算法)2、对称密钥体制的加密过程五、传统密码学(对称算法)3、对称密钥体制中的密钥管理单钥密码技术要求通信双方事先交换密钥。在实际应用中,商户需要与成千上万的购物者进行交易,若采用单钥密码技术,商户需要管理成千上万个不同对象通信的密钥。双方如何交换密钥。通过传统手段,还是通过因特网,都会遇到密钥传送的安全性问题。在现实环境中,密钥通常会经常更换,更为极端的是,每次传送都使用不同的密钥,单钥密码技术的密钥管理和发布都是远远无法满足使用要求的五、传统密码学(对称算法)五、传统密码学(对称算法)4、对称算法设计标准 算法必须提供较高的安全性; 算法必须完全确定且易于理解; 算法的安全性必须依赖于密钥,而不应依赖于算法; 算法必须对所有用户都用效; 算法必须适用于各种应用; 用以实现算法的电子器件必须很经济; 算法必须能有效使用; 算法必须是可逆的运算。密码分析二三四一五DES数据加密标准六传统密码学(对称算法)密码学历史古典密码基本概念一单钥加密体制(第1讲)扩散(diffusion)将明文及密钥的影响尽可能迅速地散布到较多个输出的密文中(将明文冗余度分散到密文中)。产生扩散的昀简单方法是通过“置换(Permutation)”(比如:重新排列字符)。六、DES数据加密标准1、分组密码的设计思想混淆(confusion)其目的在于使作用于明文的密钥和密文之间的关系复杂化,是明文和密文之间、密文和密钥之间的统计相关特性极小化,从而使统计分析攻击不能奏效。通常的方法是“代换(Substitution)”。六、DES数据加密标准一分组长度足够大(64~128~256比特)二密钥量要足够大(64~128~192~256比特)三算法足够复杂(包括子密钥产生算法)四加密、解密算法简单,易软、硬件实现五便于分析(破译是困难的,但算法却简洁清晰)2、分组密码的设计要求数据加密标准(DataEncryptionStandard),30多年历史;DES是一种对称密码算法,源自IBM1970年开发的Lucifer算法,1976年11月23日DES被采纳为美国联邦标准;DES是第一个得到广泛应用的密码算法,满足対合特性;DES是一种分组加密算法,输入的明文为64位,密钥为56位,生成的密文分组长度为64位;DES已经过时,基本上认为不再安全。六、DES数据加密标准3、分组密码——DES数据加密标准1、对输入分组进行固定的“初始置换”IP运算,可以将这个置换表示为:注意:这里L0和R0称为“左右半分组”,各为32比特。IP是固定的函数(即输入密钥不是它的参数),它是公开的。这个过程实际上为“扩散(Diffusion)”。2、迭代运算,即将下面的运算迭代16轮:注意:这个过程就是香农信息论中的“混淆”。)(),(00BlockInputIPRL←),(111iiiiiikRfLRRL−−−⊕←←六、DES数据加密标准DES的运算共有3个3、将16轮迭代后得到的结果(L16,R16)输入到IP的逆置换IP-1中:注意:DES算法的加密和解密运算均采用这3个步骤。仅有的不同是:如果加密算法中使用的轮密钥次序为k1,k2,…,k16,那么解密算法中使用的密钥次序为:k16,k15,…,k1。),(16161LRIPBlockOutput−←DES的运算共有3个(续)六、DES数据加密标准六、DES数据加密标准DES算法流程图58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157初始置换IP六、DES数据加密标准M1M2M3M4M5M6M7M8M9M10M11M12M13M14M15M16M17M18M19M20M21M22M23M24M25M26M27M28M29M30M31M32M33M34M35M36M37M38M39M40M41M42M43M44M45M46M47M48M49M50M51M52M53M54M55M56M57M58M59M60M61M62M63M64设明文64bits数据为下表六、DES数据加密标准M58M50M42M34M26M18M10M2M60M52M44M36M28M20M12M4M62M54M46M38M30M22M14M6M64M56M48M40M32M24M16M8M57M49M41M33M25M17M9M1M59M51M43M35M27M19M11M3M61M53M45M37M29M21M13M5M63M55M47M39M31M23M15M7经过初始置换IP后变为六、DES数据加密标准40848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725逆初始置换IP-1六、DES数据加密标准M1M2M3M4M5M6M7M8M9M10M11M12M13M14M15M16M17M18M19M20M21M22M23M24M25M26M27M28M29M30M31M32M33M34M35M36M37M38M39M40M41M42M43