散列函数与数字签名

散列函数与数字签名

ID:37296497

大小:1.02 MB

页数:48页

时间:2019-05-12

散列函数与数字签名_第1页
散列函数与数字签名_第2页
散列函数与数字签名_第3页
散列函数与数字签名_第4页
散列函数与数字签名_第5页
资源描述:

《散列函数与数字签名》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、信息安全概论电子科技大学出版社2007年8月2021/8/2412021/8/24第五章散列函数与数字签名5.1概述5.2消息摘要5.3消息认证5.4数字签名5.5小结25.1概述——消息摘要消息摘要(消息的数字指纹)是数字签名体系中实现信息完整性保障的技术。消息摘要的工作原理:将消息作为Hash函数的输入数据,生成定长的输出数据(即消息摘要),并将其作为消息的附加信息。Hash函数有两个基本特性:输入数据的任何细微变化将导致输出数据的巨大改变难以进行逆运算利用这两个特性,消息接收方根据消息摘要能验证收到的消息在传输过程中

2、是否发生了改变,从而验证了消息的完整性和有效性。2021/8/2435.1概述——公开密钥技术公开密钥技术是数字签名体系中进行身份认证和保障不可抵赖性的主要技术。在公钥加密技术中,利用发送者A的私钥加密的信息只有用发送者A的公钥才能解密。在A的私钥没有泄露的情况下,如果一个经某私钥加密的信息能被A的公钥解密,那么就说明该私钥属于A,从而可以确定该信息是由A发出的。(A无法抵赖)同理,别人也无法冒充A发送信息,因为他没有A的私钥。2021/8/2442021/8/245.1概述——数字签名信息完整性和不可抵赖性是信息安全的两

3、个基本要素。数字签名技术通过结合消息摘要技术和公开密钥技术,保证了不可靠网络中传输的信息的完整性和抗否认性。数字签名的大致步骤发送方利用Hash函数对待发消息M进行摘要处理,生成一个固定长度的消息摘要H(M)。用自己的私钥对该消息摘要(即一个hash值)进行加密,形成发送方的一个数字签名。(这个数字签名作为消息的附件随消息一起发送到接收方。)接收方利用数字签名中的消息摘要对消息的完整性进行判断,利用发送方的公钥对发送方进行身份认证和保证抗否认性。5图5.1数字签名过程5.2消息摘要5.2.1Hash函数的概念和原理5.2.

4、2MD5算法5.2.3SHA-1算法5.2.4MD5和SHA-1算法的比较5.2.5HMAC算法2021/8/2462021/8/245.2消息摘要——概述在通信过程中,信息的完整性是信息安全保证的重要指标。信息完整性是指信息在存储和传输过程中不被非法篡改、破坏、增删,能真实无误地到达目的地的特性。消息摘要是保证信息完整性的基本技术之一,Hash函数则是消息摘要技术的核心内容。目前最典型的两个Hash算法:MD5算法和SHA-1算法。72021/8/245.2.1Hash函数的概念Hash函数的定义把可变长度的输入数据转换

5、成固定长度的输出数据的一种函数。这个定长的输出数据称为输入数据的消息摘要,也称为散列值、哈希值或数字指纹。Hash函数具有单向性指从输入数据很容易计算其Hash值,但通过Hash值想找到其对应的输入数据是很困难的。也就是说,要找到一个输入数据使其Hash值等于一个特定值是很困难的。一个好的Hash函数也是无碰撞的即很难产生两个输入数据,使它们的Hash值相同。85.2.1Hash函数的性质一个典型的Hash函数应具有下列特性:单向性:已知Hash函数的输出c=hash(m),要求它的输入m是困难的。快速性:已知输入m,计算

6、hash(m)是容易的。抗碰撞性:已知hash(m1)=c1,构造m2使hash(m2)=c1是困难的。雪崩性:c=hash(m),c的每一比特都与m的每一比特有关,具有高度敏感性。输入数据没有长度限制:对输入任何长度的数据能够生成该输入消息固定长度的输出。2021/8/2495.2.1Hash函数的例子一个最简单的Hash函数的例子将输入数据M分成n个等长的分组Mi(1≤i≤n),然后对每个分组按位进行异或运算,得到的结果便为其消息摘要。2021/8/2410图5.2简单的Hash函数示例2021/8/245.2.1Ha

7、sh函数的攻击方法Hash函数的安全性取决于其抗各种攻击的能力。攻击者的目标通常是找到两个不同消息映射为同一值。一般假定攻击者知道Hash算法。攻击Hash函数有两种基本方法,都属于选择明文攻击。穷举攻击法(ExhaustiveAttack)生日攻击(BirthdayAttack)穷举攻击法给定H=h(M),其中H为初值,攻击者在所有可能的M中寻求有利于攻击者的M’,使h(M’)=h(M),由于限定了目标h(M)来寻找M’,这种攻击又称为目标攻击法。112021/8/245.2.1Hash函数的生日攻击法生日攻击法可用于攻

8、击任何Hash算法,它只依赖于消息摘要的长度,即Hash值的长度。生日攻击基于生日悖论。在一个教室中,找一个与某人生日相同的概率不小于0.5时,所需学生为183人。在一个教室中,至少有两个学生的生日在同一天的概率不小于0.5的学生人数仅为23人。对于n比特Hash值的生日攻击,当进行2n/2次的选择明文

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。