1 / 44
文档名称:

第18讲 消息认证和散列函数.ppt

格式:ppt   大小:2,444KB   页数:44页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第18讲 消息认证和散列函数.ppt

上传人:文库新人 2022/2/17 文件大小:2.39 MB

下载得到文件列表

第18讲 消息认证和散列函数.ppt

相关文档

文档介绍

文档介绍:第18讲 消息认证和散列函数
第1页,此课件共44页哦
*
攻击的类型
攻击
主动攻击
被动攻击
获取消息的内容
业务流分析
假冒
重放
篡改
抗击被动攻击的方法是前面已介绍过的加密
抗击主动攻击的方D1,D2,…,DN,
最后一个分组不够64比特的话,可在其右边填充一些0.
,其中16≤M≤64。
第17页,此课件共44页哦
*
(1) 数字签名
(2) 身份认证
(3)消息完整性认证
在密码学和数据安全技术中,它是实现有效、安全可靠数字签字和认证的重要工具,是安全认证协议中的重要模块。
杂凑/散列函数
散列函数的应用背景
第18页,此课件共44页哦
*
别名:
压缩(Compression)函数、
紧缩(Contraction)函数、
数据认证码(Data Authentication Code)、
消息摘要(Message Digest)、
数字指纹(Digital Finger Print)、
数据完整性校验(Data Integity Check)、
密码检验和(Cryptographic Check Sum)、
窜改检测码MDC(Manipulation Detection Code)
第19页,此课件共44页哦
*
散列函数H是一公开函数,用于将任意长的消息M映射为较短的、固定长度的一个值H(M)。
它是消息中所有比特的函数,改变消息中任何一个比特或几个比特都会使杂凑码发生改变。
散列函数的定义及使用方式
第20页,此课件共44页哦
*
① A和B共享密钥K
由于所用密钥仅为收发双方A、B共享,可保证消息的确来自A并且未被篡改。
同时还由于消息和杂凑码都被加密,提供了保密性。
散列函数的使用方式之一
第21页,此课件共44页哦
*
② 用单钥加密算法仅对杂凑码加密。
这种方式用于不要求保密性的情况下,可减少处理负担。
散列函数的使用方式之二
第22页,此课件共44页哦
*
散列函数的使用方式之三
③ 用公钥加密算法和发送方的秘密钥仅加密杂凑码。
功能:提供认证性和数字签名,不提供保密性
由于只有发送方能产生加密的杂凑码,因此对发送方发送的消息提供了数字签字。
方式选择
第23页,此课件共44页哦
*
④ 消息的杂凑值用公钥加密算法和发送方的秘密钥加密后与消息链接,再对链接后的结果用单钥加密算法加密
功能:提供了保密性和数字签字
散列函数的使用方式之四
第24页,此课件共44页哦
*
⑤ 通信双方共享一个秘密值S,A计算消息M和秘密值S链接在一起的杂凑值,并将此杂凑值附加到M后发往B。
接收方B可重新计算杂凑值以对消息进行认证。
由于敌手无法得到S,所以无法对截获的消息加以篡改,也无法产生假消息。
功能:提供认证性.
散列函数的使用方式之五
第25页,此课件共44页哦
*
⑥ 将消息与杂凑值链接以后再增加单钥加密运算
功能:提供认证性和保密性.
散列函数的使用方式之六
第26页,此课件共44页哦
*
由于加密运算的速度较慢,代价较高,而且很多加密算法还受到专利保护,在不要求保密性的情况下,方式②和③将比其他方式更具优势。
散列函数的使用方式选择
2
第27页,此课件共44页哦
*
散列函数应满足以下条件:
① 函数的输入可以是任意长。
② 函数的输出是固定长。
③ 已知x,求H(x)较为容易,可用硬件或软件实现。
这三个条件是散列函数能用于消息认证的基本要求。
散列函数应满足的条件
④ 已知h,求使得H(x)=h的x在计算上是不可行的
这一性质称为函数的单向性,称H(x)为单向散列函数。
第28页,此课件共44页哦
*
散列函数应满足的条件
⑥ 找出任意两个不同的输入x、y,使得H(y)=H(x)在计算上是不可行的。如果单向散列函数满足这一性质,则称其为强单向散列函数。
第6个条件用于抵抗生日攻击。
第⑤和第⑥个条件给出了散列函数无碰撞性的概念
如果散列函数对不同的输入可产生相同的输出,则称该函数具有碰撞性。
⑤ 已知x,找出y(y≠x)使得H(y)=H(x)在计算上是不可行的。如果单向散列函数满足这一性质,则称其为弱单向散列函数。这使得敌手无法在已知某个消息时,找到与该消息具有相同杂凑值的另一消息,防止敌手的伪造。
MD5
第29页,此课件共44页哦
*
Hash函数的两种穷举攻击--生日问题 附录中
第Ⅰ类生日攻击
一是给定消息的Hash函数H(x),破译者逐个生成其他文件y,以使H(x)=H(y)
第Ⅱ类生日攻击
二是攻击者寻找两个随机