网络信息安全crypto11消息认证和散列函数课件

上传人:re****.1 文档编号:570648990 上传时间:2024-08-05 格式:PPT 页数:23 大小:508.50KB
返回 下载 相关 举报
网络信息安全crypto11消息认证和散列函数课件_第1页
第1页 / 共23页
网络信息安全crypto11消息认证和散列函数课件_第2页
第2页 / 共23页
网络信息安全crypto11消息认证和散列函数课件_第3页
第3页 / 共23页
网络信息安全crypto11消息认证和散列函数课件_第4页
第4页 / 共23页
网络信息安全crypto11消息认证和散列函数课件_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《网络信息安全crypto11消息认证和散列函数课件》由会员分享,可在线阅读,更多相关《网络信息安全crypto11消息认证和散列函数课件(23页珍藏版)》请在金锄头文库上搜索。

1、网络信息安全网络信息安全Chapter 11 Message Authentication and Hash Functions2024/8/51网络信息安全crypto-11消息认证和散列函数本章要点本章要点l消息认证是用来验证消息完整性的一种机制或服务。消息认证确保收到的数据确实和发送时的一样(即没有修改、插入、删除或重放),且发送方声称的身份是真实有效的。l对称密码在那些相互共享密钥的用户间提供认证。用消息发送方的私钥加密消息也可提供一种形式的认证。l用于消息认证的最常见的密码技术是消息认证码和安全散列(hash)函数。lMAC是一种需要使用秘密密钥的算法,以可变长的消息和秘密密钥作为输

2、入,产生一个认证码。拥有秘密密钥的接收方产生一个认证码来验证消息的完整性。l散列函数将可变长度的消息映射为固定长度的散列值,或叫消息摘要。对于消息认证码,安全散列函数必须以某种方式和秘密密钥捆绑起来。2024/8/52网络信息安全crypto-11消息认证和散列函数报文认证报文认证Message Authentication l消息认证(报文认证)关心的问题是 l保护消息的完整性 l验证发起方身份 l消息源的不可否认(解决分歧)l消息认证要考虑安全需求l三种消息认证的方法l消息加密l消息认证码(MAC)l哈希函数2024/8/53网络信息安全crypto-11消息认证和散列函数11.1 对认证

3、的要求对认证的要求可能有下述攻击可能有下述攻击l泄密Disclosure,将消息透露给没有合法身份的第三方l传输分析Traffic analysis,分析双方通信模式l伪装Masquerade,欺诈源向网络中插入一条消息l内容篡改Content modification,对消息内容的修改l顺序篡改Sequence modification,对消息顺序的修改l计时篡改Timing modification,对消息的延时和重放l信源抵赖Source repudiation,发送方否认发送过某消息l信宿抵赖Destination repudiation,接收方否认接收过某消息2024/8/54网络信

4、息安全crypto-11消息认证和散列函数11.2 认证函数认证函数11.2.1 消息加密l消息加密本身提供了一种认证手段l对称加密l接收方可以确信消息是由发送方产生的,因为除了接收方以外只有发送方拥有加密密钥,产生出用此密钥可以解密的密文l如果消息可以是任意的位模式,接收方无法确定收到的消息是合法明文的密文。因此,通常不管密文的值是什么,如果解密后得到的明文有合法明文的位模式,接收方都会作为真实的密文接收。2024/8/55网络信息安全crypto-11消息认证和散列函数2024/8/56网络信息安全crypto-11消息认证和散列函数解决解密所得消息是否具有可读性的问题解决解密所得消息是否

5、具有可读性的问题l要求明文具有某种易于识别的结构,如在加密前对每个消息附加一个帧校验序列FCSlFCS和加密函数执行的顺序很重要2024/8/57网络信息安全crypto-11消息认证和散列函数l若要提供认证,发送方用自己的私钥对消息加密,接收方用发送方的公钥解密(验证),就提供了认证功能。l如果发送方用私钥加密消息,再用接收方的公钥加密,就实现了既保密又认证的通信l既保密又认证的通信的代价是需要执行四次复杂的公钥算法而不是两次。公钥加密作为认证手段公钥加密作为认证手段2024/8/58网络信息安全crypto-11消息认证和散列函数11.2.2 消息认证码消息认证码MAC l使用密钥产生短小

6、的定长数据分组,即所谓的密码检验MAC,将它附加在报文中。通信双方A和B共享密钥K,报文从A发往B,A计算MAC=CK(M), 附在报文后发给B。B对接收到的报文重新计算MAC,并与接收到的MAC比较。如果只有收发双方知道密钥且两个MAC匹配,则:l接收方可以确信报文未被更改;l接收方可以确信报文来自声称的发送者;l接收方可以确信报文序号正确,如果有的话。l报文认证不提供保密lMAC函数类似加密,但非数字签名,也无需可逆l将MAC直接与明文并置,然后加密传输比较常用2024/8/59网络信息安全crypto-11消息认证和散列函数lMAC加密所得的消息校验和MAC = CK(M)l使用一个秘密

7、密钥K,浓缩一个变长的消息M,产生一个固定长度的认证子lMAC是一种多对一的函数l定义域由任意长的消息组成,值域由所有可能的MAC和密钥组成。若使用n位长的MAC, 则有2n个可能的MAC, 有N条可能的消息, N2n. 若密钥长度为k, 则有2k种可能的密钥。l如N为100, n为10, 共有2100不同的消息, 210种不同的MAC, 平均而言同一MAC可由2100/ 210=290条不同的消息产生。若密钥长度为5,则从消息集合到MAC值的集合有25=32不同映射。l可以证明,由于认证函数的数学性质,与加密相比,认证函数更不易被攻破MAC: 消息认证码的特点消息认证码的特点2024/8/5

8、10网络信息安全crypto-11消息认证和散列函数2024/8/511网络信息安全crypto-11消息认证和散列函数2024/8/512网络信息安全crypto-11消息认证和散列函数11.2.3 散列函数散列函数 Hash Functionl一个散列函数以变长的报文M作为输入,产生定长的散列码H(M),作为输出,亦称作报文摘要Message Digest. 散列码是报文所有比特的函数值,具有差错检测能力,报文任意一比特的改变都将引起散列码的改变l不同的散列码使用方式l对附加了散列码的报文进行加密l使用常规加密方法仅对散列码加密l使用公开密钥方法仅对散列码加密,提供数字签名l同时提供保密和

9、签名,可以分别使用常规方法加密报文及使用公开密钥方法加密散列码l其他l对避免加密的方法重视的原因加密过程很慢,硬件开销大2024/8/513网络信息安全crypto-11消息认证和散列函数2024/8/514网络信息安全crypto-11消息认证和散列函数2024/8/515网络信息安全crypto-11消息认证和散列函数2024/8/516网络信息安全crypto-11消息认证和散列函数11.3 消息认证码消息认证码MACl对MAC的要求1.若攻击者已知M和C(K,M),则构造满足C(K,M)=C(K,M)的消息M在计算上是不可行的2.C(K,M)应该是均匀分布的,即对任何随机选择的消息M和

10、M,C(K,M)=C(K,M)的概率是2-n,其中n是MAC的位数3.设M是M的某个已知的变换,即M=f(M),如f可能表示逆转M的一位或多位,那么PrC(K,M)=C(K,M)的概率是2-n.l基于DES的消息认证码 FIPS PUB 113l该算法定义为以密码分组链接(CBC)为操作方式的用0作为初始化向量的DES2024/8/517网络信息安全crypto-11消息认证和散列函数2024/8/518网络信息安全crypto-11消息认证和散列函数使用消息认证码的几种情形使用消息认证码的几种情形l相同报文进行多点广播,以明文加对应MAC的形式进行广播,接收者负责鉴别,不正确时发出告警l接收

11、方无法对所有收到的报文进行解密工作,则可以进行有选择地鉴别,对报文作随机检查l对明文形式的计算机程序进行鉴别,检查完整性l某些应用不关注报文的保密而更重视鉴别报文的真实性,如SNMPv3,将保密与鉴别分开l保密函数与鉴别函数的分离能提供结构上的灵活性,如在应用层完成鉴别而在较低层加密lMAC不提供数字签名,因为双方共享密钥。不提供数字签名,因为双方共享密钥。2024/8/519网络信息安全crypto-11消息认证和散列函数11.4 散列函数散列函数l散列函数l一个散列函数以变长的报文M作为输入,产生定长的散列码H(M),作为输出,亦称作报文摘要Message Digest. 散列码是报文所有

12、比特的函数值,具有差错检测能力,报文任意一比特的改变都将引起散列码的改变。 h=H(M)l报文摘要的基本原理l对任意长度的明文m,经由哈希函数(杂凑函数)h产生固定长度的哈希值h(m),用来对明文作鉴别(authentication)或数字签名(digital signature)。哈希函数值是对明文的一种“指纹”(finger print)或是摘要(digest)。对哈希函数值的数字签名,就是对此明文的数字签名,可以用来提高数字签名的效率。2024/8/520网络信息安全crypto-11消息认证和散列函数2024/8/521网络信息安全crypto-11消息认证和散列函数1. H可以应用于

13、任意大小的数据块2. H产生固定长度的输出3. 对任意给定的明文x,计算H(x)容易,可由硬件或软件实现4. 对任意给定的散列码h,找到满足H(x)=h的x,在计算上不可行,单向性单向性5. 对任何给定的分组x,找到满足yx且H(x)=H(y)的y,在计算上不可行,抗弱碰撞性抗弱碰撞性6. 找到任何满足H(x)=H(y)的偶对(x, y),在计算上不可行,抗强碰撞性抗强碰撞性对散列函数的要求对散列函数的要求 h=H(M)2024/8/522网络信息安全crypto-11消息认证和散列函数l条件1, 2, 3是所谓单向性问题(One-way)l条件4, 5是对使用的哈希值的数字签名方法所做的安全保障,否则攻击者可由已知的明文及相关的数字签名任意伪造对其他明文的签名l条件6主要用于防范所谓的生日攻击法l能满足条件1-5的,称为弱哈希函数(Weak Hash Function)l能同时满足条件6的,称为强哈希函数(Strong Hash Function)l应用在数字签名上的哈希函数必须是强哈希函数强哈希函数强哈希函数2024/8/523网络信息安全crypto-11消息认证和散列函数

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 销售管理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号