《清华大学信息与网络安全概论(第三版)课件 (5).ppt》由会员分享,可在线阅读,更多相关《清华大学信息与网络安全概论(第三版)课件 (5).ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、信息验证(Message Authentication)信息与网络安全概论(第三版)28.1单向哈希函数8.2文件信息的完整性验证8.3MD5单向哈希函数8.4SHA单向哈希函数8.5文件信息的来源验证8.6信息验证码本章内容信息与网络安全概论(第三版)3单向哈希函数两个主要功能(1)将文件信息打散及重组,使其不能再还原为原始文件信息。(2)将任意长度的文件信息压缩成固定长度的信息摘要。数学公式 MD=H(M)H(.):一单向哈希函数M:表一任意长度文件信息 8.1单向哈希函数信息与网络安全概论(第三版)4单向哈希函数三种特性(1)给定文件信息M可很容易算出其对应的讯息摘要MD。(2)给定一信
2、息摘要MD,很难从MD去找到一个文件信息M,使H(M)=MD。(3)给定一文件信息M,很难再找到另一文件讯息M,使H(M)=H(M)。单向哈希函数特性避免碰撞的情况发生 (Collision-resistance)信息与网络安全概论(第三版)5以单向哈希函数做文件信息的完整验证,其验证方式如下:8.2文件信息的完整性验证信息与网络安全概论(第三版)6首先,张三将要传送给李四的文件信息M,经单向哈希函数运算后得到一信息摘要MD,再将文件信息M与信息摘要MD一起送给李四。李四收到后先将文件信息M用同样的单向哈希函数运算,假设得到一信息摘要MD,李四再比较MD是否与收到的MD相同,若相同,则李四则可
3、确认此文件的完整性。8.2文件信息的完整性验证(续)信息与网络安全概论(第三版)78.3MD5单向哈希函数MD5 was developed by Ron Rivest at MITArbitrary Length Message MD5 128-bit Message简介简介信息与网络安全概论(第三版)8添加位及长度信息信息与网络安全概论(第三版)9MD5 的运算过程信息与网络安全概论(第三版)10Initial Vector,IVA:01 23 45 67B:89 AB CD EFC:FE DC BA 98D:76 54 32 10Note:hexadecimal values文件分割与初
4、始化MD缓存器将信息分割成N个512位的小块,Y0、Y1、.、YN-1,其总长度等于N 512位。将分割后的512位信息块,再分割为十六个32位的字符,以M0、M1、.、M15来表示这16个32位的字符。信息与网络安全概论(第三版)11单一信息块的运算过程信息与网络安全概论(第三版)12MD5的回合运算过程信息与网络安全概论(第三版)13MD5 的非线性计算方式及其真值表Primitive Logical Function信息与网络安全概论(第三版)14Table TTi=232 abs(sin(i)sin:sine functionExample:MD5 的非线性计算方式及其真值表(续)信息
5、与网络安全概论(第三版)15MD5的Ti参数值信息与网络安全概论(第三版)168.4SHA单向哈希函数简简 介介SHA was developed by the National Institute of Standard and Technology(NIST)SHA was published as a federal information processing standard(FIPS PUB 180)in 1993Maximum length of less than 264Message SHA 160-bit Message信息与网络安全概论(第三版)17SHA的运算架构(SH
6、A-1)信息与网络安全概论(第三版)18初始化MD缓存器Initial Vector,IVA:67 45 23 01B:EF CD AB 89C:98 BA DC FED:C3 D2 E1 F0E:C3 D2 E1 F0Note:hexadecimal values信息与网络安全概论(第三版)19SHA信息块的运算过程F:primitive logical functionW:a 32-bit word derive from the current 512-bit input block+:addition modulo 232信息与网络安全概论(第三版)20SHA中W字符的产生过程信息与网
7、络安全概论(第三版)21SHA中单一回合的运算过程信息与网络安全概论(第三版)22SHA的非线性计算方式Primitive Logical Function回合函数Fr 定义信息与网络安全概论(第三版)23SHA的 F1、F2、F3、F4函数真值表SHA中F1、F2、F3、F4 函数的真值表 信息与网络安全概论(第三版)24SHA的常数值Four Additive Constant,Kr回合 常数值信息与网络安全概论(第三版)258.5文件信息的来源验证单向哈希函数虽然可用来作信息的完整性验证,但实际运用上却是行不通的。问题在于没有对信息的来源作验证(Authentication)。信息与网络
8、安全概论(第三版)268.5.1秘密密钥密码系统的信息验证机制对称式密码系统文件信息验证机制的验证式如下:信息与网络安全概论(第三版)27当张三要送信息M给李四,张三就用与李四先协议 好的秘密密钥K,来对信息M作加密(如=Ek(M),E(.)为一对称式的加密算法,C为加密后所得的密文。张三将信息M及C一同寄给李四,李四收到后就验证Dk(C)?=M,其中D(.)为一对称式的解密算法。若Dk(C)与M相等,则李四就可确认此信息为张三所送。8.5.1秘密密钥密码系统的信息验证机制(续)信息与网络安全概论(第三版)288.5.2公开密钥密码系统的信息验证机制以公开密钥密码系统来做数字签章,其文件信息验
9、证方式如下:信息与网络安全概论(第三版)29假设张三的公开密钥为PKa,私密密钥为PRa。要传送信息M给李四时,张三计算出该信息的信息摘要MD=H(M),接着再用私密密钥计算信息摘要的数字签章S=DPRa(MD),其中D(.)为一公开密钥密码系统的签章算法。然后将文件信息M与数位签章一起送给李四。李四收到后,先计算出信息M的信息摘要MD=H(M),接着利用张三的公开密钥PKa来验证EPRa(S)?=MD。若相等,则李四就可相信该信息是正确的。8.5.2公开密钥密码系统的信息验证机制(续)信息与网络安全概论(第三版)308.5.3密钥相依单向哈希函数的信息验证机制为改善前面两种方法需大量运算的缺
10、点,便有了植基于密钥相依单向哈希函数,此种机制又称文件信息验证码(MAC):信息与网络安全概论(第三版)31张三与李四先协议一把共同的秘密密钥K,当张三要传送一信息M给李四时,张三会先利用K对此文件信息M产生一文件信息验证码MAC=H(K|M)。然后将M连同MAC一起送给李四。李四收到后会先将M及自己的秘密密钥K,来算出MAC=H(K|M),再与接收到的MAC进行比对,若相等,则确信文件信息在传送过程中没有遭到篡改。8.5.3密钥相依单向哈希函数的信息验证机制(续)信息与网络安全概论(第三版)328.6信息验证码文件信息验证码(Message Authentication Code,MAC)可
11、用来验证文件信息是否为约定好通讯的双方所传送,并且验证文件信息在传递过程中是否遭到篡改。信息与网络安全概论(第三版)33利用秘密密钥密码系统及单向哈希函数所构成的MAC信息与网络安全概论(第三版)8.6.1CBC-MACCBC-MAC是一种用CBC块加密模式来实作文件信息验证的作法,只需将文件信息用CBC模式来加密即可。MAC的产生过程有三个步骤:将所要传递文件信息长度扩充为64位的位数,不足的部分以0补上。将此扩充的文件信息依每64位切割成一个块。先对第一个块作DES的加密,加密时需输入一56位的秘密密钥,所得到64位的密文,再与下一个文件信息块作XOR运算,然后再用DES对其加密,以此类推
12、。信息与网络安全概论(第三版)35DES-MAC的运算过程信息与网络安全概论(第三版)368.6.2 单向哈希函数MAC这种MAC类型是利用一单向哈希函数,配合一秘密密钥所构成的文件信息验证码。此类的文件信息验证码机制也可让使用者自行来决定要采用何种单向哈希函数,在实作上相当便利也具有弹性。串接方式可以是H(K|M),但不安全。较安全的串接方式是H(M|K)、H(K1|M|K2)、H(K,H(K|M)、H(K1,H(K2|M)。信息与网络安全概论(第三版)37以H(K|M)串接方式不安全可任加一个块的文件信息M到原文件信息的后面其验证的结果都会正确。以MD5单向哈希函数算法为例,若王五拦截到张三要传给李四的文件信息M及其信息验证码H(K|M),那么王五根本不需要知道张三跟李四所协议的共同秘密密钥K就可以任加一段信息M至原信息后面,且有办法得到正确的信息验证码H(K|M|M)。1.利用拦截到的128位信息验证码H(K|M)作为MD5中A、B、C、D四个缓存器的初始值。2.将添加信息M分割成数个512位的信息块,再透过MD5算法来做运算。3.最后得到的128位输出结果就等于H(K|M|M)。SHA也有同样的问题