第4章 数据认证 《计算机网络安全的理论与实践(第2版)》·【美】王杰,高等教育出版社,2011年. 1
1 第 4 章 数据认证 《计算机网络安全的理论与实践(第2版)》. 【美】王杰, 高等教育出版社, 2011年
为什么需要数据认证? 。验证数据的来源 确认数据没有被篡改或伪造 一个使用预共享秘密的简单认证方案: Alice发送消息M和密文C=Ek(M给Bob Bob接收到消息后,用密钥K解密密文C得到M 如果M=M,那么Bob确认消息M来自于Alice ● 公钥密码体系能够提供数据认证和抗抵赖功能 当需要认证一个很长的消息M时,只需要计算代表此消息的短 字符串h,并进行加密 《计算机网络安全的理论与实践(第2版)》·【美】王杰,高等教育出版社,2011年. 2
2 为什么需要数据认证? 验证数据的来源 确认数据没有被篡改或伪造 一个使用预共享秘密的简单认证方案: Alice发送消息M 和密文C = Ek (M) 给 Bob Bob接收到消息后,用密钥 K 解密密文C 得到 M’ 如果M’ = M ,那么Bob 确认消息M 来自于Alice 公钥密码体系能够提供数据认证和抗抵赖功能 当需要认证一个很长的消息M时,只需要计算代表此消息的短 字符串h,并进行加密 《计算机网络安全的理论与实践(第2版)》. 【美】王杰, 高等教育出版社, 2011年
数字指纹 不需要使用秘密密钥而生成的一个长数据的短的表示,称为数 字摘要或数字指纹 ·数字指纹可以使用密码散列函数得到,又称为单向散列函数 使用秘密密钥产生的数据的短表示,称为消息认证码(MAC)或 标签 ● MAC可以通过加密的校验和算法得到 带密钥的散列消息认证码(HMAC)是密码散列函数和密码校验 和算法的组合 《计算机网络安全的理论与实践(第2版)》·【美】王杰,高等教育出版社,2011年. 3
3 数字指纹 不需要使用秘密密钥而生成的一个长数据的短的表示,称为数 字摘要或数字指纹 数字指纹可以使用密码散列函数得到,又称为单向散列函数 使用秘密密钥产生的数据的短表示,称为消息认证码 (MAC) 或 标签 MAC 可以通过加密的校验和算法得到 带密钥的散列消息认证码(HMAC) 是密码散列函数和密码校验 和算法的组合 《计算机网络安全的理论与实践(第2版)》. 【美】王杰, 高等教育出版社, 2011年
第4章内容概要 ·4.1密码散列函数 ·4.2密码校验和 ●4.3HMAC ·4.4密码本偏移操作模式 。4.5生日攻击 。4.6数字签名标准 。4.7双签名与电子交易 。4.8盲签名与电子现金 《计算机网络安全的理论与实践(第2版)》.【美】王杰,高等教育出版社,2011年. 4
4 第4章 内容概要 4.1 密码散列函数 4.2 密码校验和 4.3 HMAC 4.4 密码本偏移操作模式 4.5 生日攻击 4.6 数字签名标准 4.7 双签名与电子交易 4.8 盲签名与电子现金 《计算机网络安全的理论与实践(第2版)》. 【美】王杰, 高等教育出版社, 2011年
密码散列函数 。散列函数以一个长的消息为输入,分成若干部分后,进行“打碎重组”, 产生一个新的短字符串。 。不是每一个散列函数都适合用于生成数字指纹,例如: M=M M2 ..Mk 其中M,是一个16-bit的二进制串 定义下面的散列函数H: H(M0=M1⊕M2⊕..⊕Mk 。对于上面的散列函数,很容易举出一些例子,使得不同的明文消息具有 相同的杂凑值 aS1:“He likes you but I hate you”和S2:“He hates you but I like you” 把上面消息的英文字符用8-bit ASC码进行编码,并去掉单词之间的空格, 则得到H(S1)=He(S2) 《计算机网络安全的理论与实践(第2版)》·【美】王杰,高等教育出版社,2011年 5
5 散列函数以一个长的消息为输入,分成若干部分后,进行“打碎重组” , 产生一个新的短字符串。 不是每一个散列函数都适合用于生成数字指纹,例如: M = M1 M2 … Mk 其中 Mi 是一个 16-bit 的二进制串 定义下面的散列函数H⊕: H⊕(M) = M1 ⊕ M2 ⊕ … ⊕ Mk 对于上面的散列函数,很容易举出一些例子,使得不同的明文消息具有 相同的杂凑值 S1 : “He likes you but I hate you” 和S2 : “He hates you but I like you” 把上面消息的英文字符用8-bit ASCII码进行编码,并去掉单词之间的空格, 则得到 H⊕(S1 ) = H⊕(S2 ) 密码散列函数 《计算机网络安全的理论与实践(第2版)》. 【美】王杰, 高等教育出版社, 2011年