欢迎来到天天文库
浏览记录
ID:24242274
大小:16.18 KB
页数:3页
时间:2018-11-13
《密码学复习75428new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第七章消息认证码MAC消息认证码(MAC)是用来保证数据完整性的一种工具,在数据完整性越来越重要的今天,需要一种方法能够保证一方所发送的数据能被另一方验证时正确的,它可以放在数据未经授权被篡改。用数学语言来描述,MAC实质上就是一个双方共享的秘药k和消息m作为输入的函数,如将函数值记为MACk,这个函数值就时一个认证标志,用表示。攻击者发起攻击的时候能够得到的是消息和标记的序列对(m1,δ1)其中δi=MACk(mi)。如果攻击者找到一个消息m,m不在m1,m2…….,之中,并且能够得到正确的认证标记δ=MAC(m)就说明攻击成功了,攻击者成功的概率就是其攻破MAC的概率。
2、消息认证码的功能:(掌握)①接收方相信发送方发来的消息未被篡改,这是因为攻击者不知道密钥,所以不能在篡改消息后相应的篡改MAC,而如果仅篡改消息,则接收方计算的新的MAC将于收到的MAC不同。②接收方相信发送方不是冒充的,这是因为出收发双方外再无其他人中的密钥,因此其他人不可能对自己发送的消息计算出正确的MAC。MAC的构造:一种基于分组密码的,一种基于带密钥的Hash函数的。(了解)CBC-MAC是最为广泛使用的消息认证算法之一,同时他也是一个ANSI标准(X.9.17)。CBC-MAC实际上就是相当于对消息使用CBC模式进行加密,取密文的最后一块作为认证码。下面介绍具体
3、构造过程:(当取DES作为加密的分组密码时,称为基于DES的CBC-MAC,若需要产生的认证码的消息为x,加密的DES密钥为K)①填充和分组。对消息x进行填充,将填充得到的消息分成t个n比特的分组(基于DES通常n=64),记为x1,x2……②密码分组连接。令Ek表示以K为密钥的加密算法DES,迭代的方式分别计算出Hi,最后结果是Ht就是x的消息认证码,基于的DES的CBC-MAC的MAC为64bit。其他方法略…….HMAC介绍:(了解)引入:利用对称分组密码体制(如DES、AES)的密码分组连接模式(CBC)一直都是构造MAC的最常见的方法。近几年,人们越来月感兴趣于利
4、用哈希函数来设计MAC,这是因为向MD5、SHA-1这样的哈希函数,其执行速度比诸如DES这样的分组密码要快。然而,诸如SHA-1这样的哈希函数并不是专门为MAC而设计的,由于哈希函数不依赖于密钥,所以它不能直接用于MAC。目前,已经提出很多方案将密钥加到现有的哈希函数中。HMAC是最受支持的方案,并且在Internet协议中(如SSL)中有应用。HMAC设计目标:消息认证么的不足:可以保护通信双方防止第三者攻击,不能保证通信双方中一方防止另一方的欺骗和伪造。(例如:B伪造一个消息并使用A共享的密钥产生该消息的认证码,然后声称该消息来自于A;B有可能伪造A发来的消息,所以A
5、就可以对自己发过的消息予以否认。这里插入一点点题外话:MACvsHashMAC需要对全部数据进行加密;MAC速度慢;Hash是一种直接产生认证码的方法,即hash函数是不带密钥的,将任意长度的消息压缩成固定长度消息摘要,而MAC是带密钥的,构造方法通常基于hash函数。ElGamal数字签名:暂时不懂数字签名标准(DSS):DDS使用SHA作为散列算法;DDS是标准,DSA是算法;DDS时ElGamal和Schnorr算法的变形;DDS产生320位数字签名,但是具有512-1024位的安全性。DDS与RSA:当p相同时,DDS签名的计算比RSA签名的计算要快。DDS与ElG
6、amal:因为q小于p,DSS签名笔ElGamal签名要小。
此文档下载收益归作者所有