网络安全-11:消息认证和Hash函数

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Chapter11消息认证和Hash函数《密码编码学与网络安全》2020/2/242§11.1对认证的需求可能的攻击:1.泄密2.传输分析3.伪装4.内容修改5.顺序修改6.计时修改7.发送方否认8.接收方否认2020/2/243消息认证:验证所收到的消息确实是来自真实的发送方且未被修改的消息,它也可验证消息的顺序和及时性。数字签名:是一种认证技术,其中的一些方法可用来抗发送方否认攻击。(接收者可验证但不能伪造)消息认证数字签名2020/2/244§11.2认证函数两层:产生认证符+验证产生认证符的函数类型:消息加密:消息的密文作为认证符。消息认证码:消息和密钥的公开函数,产生定长的值作为认证符。MAC:messageauthenticationcodeHash函数:将任意长消息映射为定长的hash值作为认证符。2020/2/245消息加密消息加密也能提供一种认证的方法对称密码,既可以提供认证又可以提供保密性,但不是绝对的。只有消息具有适当的结构、冗余或含有校验和,接收方才可能对消息的任何变化进行检测。否则,认证难以完成。2020/2/246P2312020/2/247消息加密公钥体制中:加密不能提供对发送方的认证(公钥是公开的)发送方可用自己的私钥进行签名接收方可用发送方的公钥进行验证保密性和可认证性2020/2/248P233-2342020/2/249消息认证码(MAC)一种认证技术利用密钥来生成一个固定长度的短数据块(MAC),并将该数据块附加在消息之后。MAC的值依赖于消息和密钥MAC=Ck(M)MAC函数于加密类似,但MAC算法不要求可逆性,而加密算法必须是可逆的。接收方进行同样的MAC码计算并验证是否与发送过来的MAC码相同2020/2/2410MAC特性MAC码是一个密码校验和MAC=CK(M)消息M的长度是可变的密钥K是要保密的,且收发双方共享。产生固定长度的认证码MAC算法是一个多对一的函数多个消息对应同一MAC值但是找到同一MAC值所对应的多个消息应该是困难的。2020/2/2411MessageAuthenticationCode2020/2/2412若相同,则有:接收方可以相信消息未被修改。接收方可以相信消息来自真正的发送方。接收方可以确信消息中含有的序列号是正确的。为什么需要使用MAC?有些情况只需要认证(如广播)以明文形式认证计算机程序……由于收发双方共享密钥,所以MAC不能提供数字签名2020/2/2413对MACs的要求:抗多种攻击(例如穷举密钥攻击)且满足:1.已知一条消息和MAC,构造出另一条具有同样MAC的消息是不可行的2.MACs应该是均匀分布的3.MAC应该依赖于消息的所有比特位2020/2/24142020/2/24152020/2/2416用对称密码产生MACs采用分组密码的链接工作模式,并把最后分组作为MACDataAuthenticationAlgorithm(DAA)是一个广泛使用的数据认证算法,基于DES-CBC(FIPSPUB113,ANSIX9.17)IV=0且最后一个分组用0填充其后以补足64位分组用DES的密文分组链接模式CBC加密消息把最后一个分组作为MAC发送或者取最后分组的左边Mbits(16≤M≤64)但是对于安全性来说,最终的MAC还是太小了2020/2/2417DataAuthenticationAlgorithm2020/2/2418Hash函数浓缩任意长的消息M到一个固定长度的取值h=H(M)通常假设hash函数是公开的且不使用密钥(MAC使用密钥)Hash函数用户检测对消息的改变多种方式工作方式常用于产生数字签名2020/2/24192020/2/24202020/2/2421Hash函数和数字签名2020/2/24222020/2/2423对Hash函数的要求1.可用于任何尺寸的消息M2.产生固定长度的输出h3.对任何消息M,计算h=H(M)是容易的。4.给定h,计算满足H(x)=h的x在计算上是不可行的•单向性5.给定x,计算满足H(y)=H(x)的y在计算上是不可行的•抗弱碰撞性(weakcollisionresistance)6.找到任何满足H(y)=H(x)的偶对(x,y),在计算上是不可行的。•抗碰撞性(strongcollisionresistance)2020/2/2424简单Hash函数举例ci——散列码的第i位,i∈[1,n]m——n位输入分组的个数bij——第i个分组的第j位imi3i2i1ib...bbbC2020/2/2425生日攻击也许认为64-bit的hash已经是安全的,但生日悖论的结果告诉我们,不!生日攻击:攻击者产生消息的2m/2种变体,且每一种具有同样含义。攻击者还可以产生一个伪造消息的2m/2种变体两个集合进行比较以发现具有同样Hash的一对消息(根据生日悖论,找到这对消息的概率大于0.5)攻击者将该有效变式提供给发送方签名,将签名附于伪造消息的有效变式后,发送给预期的接收者。结论就是用更多比特位的MAC/hash2020/2/2426小结消息认证的方法消息加密MACsHash函数安全讨论(略)2020/2/2427第11章作业思考题:11.6

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功