欢迎来到天天文库
浏览记录
ID:50066953
大小:175.50 KB
页数:63页
时间:2020-03-08
《网络安全原理与应用 教学课件 作者 沈苏彬 NetSec-ch3.2 Message Authen.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第3章身份验证技术及应用报文身份验证沈苏彬南京邮电大学信息网络技术研究所关键知识点报文身份验证是为了验证报文发送方的真实性,和报文在传递过程中的完整性。可以采用加密方法进行报文验证,也可以采用安全哈希函数验证报文。目前因特网中常用的密码哈希函数是报文摘要算法MD5,而目前公认较为安全的密码哈希函数是安全哈希算法SHA-1。哈希报文验证码算法HMAC是现在因特网中常用的一种无加密报文验证方法。2007-10-102主要内容报文身份验证基本概念报文摘要算法MD5安全哈希算法SHA-1哈希函数的报文验证码算法HMAC生日现象与生日攻击数字签名2007-10-103报文身份验证基本概念报
2、文身份验证也称为“报文验证”,它的目标是验证报文发送方的真实性,以及报文在传递过程中的完整性。报文的完整性是指报文在传递过程中,除了正常协议处理而在报文中产生的改动外,报文的任何部分都没有被随意修改。报文验证并不能验证报文到达的及时性以及报文到达的有序性。这些特性需要利用身份验证协议加以验证。2007-10-104采用加密的报文验证方法报文验证方法可以采用两种:一种是加密报文验证方法,另一种是非加密报文验证方法。采用加密的报文验证方法具体可以分成以下3种方法:加密整个报文的报文验证方法加密报文校验和的报文验证方法附加密文块的报文验证方法2007-10-105加密整个报文的方法报文
3、验证的最简单方法就是采用加密方法:可以直接对整个报文进行加密后再发送,接收方接收到之后首先解密,然后再接收报文。这种方法的处理效率较低,因为加密和解密过程都是消耗计算资源较多的操作。报文加密算法密钥报文发送方报文解密算法密钥报文接收方图3.5加密整个报文的报文验证方法传递2007-10-106加密报文校验和的方法报文验证也可以仅仅加密报文的校验和,而不加密整个报文。一般报文都具有校验和,用于检测在报文传递过程中是否出现差错。如图3.6所示。报文加密算法密钥发送方校验和解密算法密钥接收方图3.6加密报文校验和的报文验证方法报文校验和校验和报文校验和计算校验和’比较传递2007-10
4、-107加密报文校验和的方法(续)一般报文中的校验和都是采用奇偶校验方法生成的,它只能检测出在校验和同一个二进制位置上出现的奇数次改动。根据校验和的特征可知,校验和并不可靠。网络攻击者可以同时修改偶数个比特,使得修改后报文的校验和与修改前报文的校验和相同,2007-10-108附加密文块的方法采用传统的加密方法,例如DES加密算法加密报文后,取密文的最后一个密文块,附加在报文后面传递给接收方。接收方收到报文后,同样对接收到的报文进行加密,得到最后一个密文块。然后,比较接收到的密文块与计算得到的密文块是否相同,如果相同,则报文在传递过程中没有被修改。否则,报文在传递过程中被修改。2
5、007-10-109附加密文块的方法(续)这种报文验证方法在发送方和接收方都需要对整个报文执行加密算法,而加密算法是一种计算开销较大的操作,故开销太大。报文加密算法密钥发送方加密算法密钥接收方图3.7附加密文块的报文验证方法报文密文块报文密文块密文块’比较传递2007-10-1010报文摘要与密码哈希函数加密校验和的报文验证方法以及附加密文块的报文验证方法揭示了报文验证的一个关键问题:如何能够采用较为简便的算法,计算出一个固定长度的、能够反映报文特征的数据块?这个固定长度的、能够反映报文特征的数据块就称为报文摘要。目前通常采用密码哈希函数生成报文摘要这种报文摘要算法不同于加密算法
6、。2007-10-1011报文摘要与密码哈希函数(续1)假定这种哈希函数为H,报文为m,哈希值为h,即h=H(m)。这个哈希函数必须具备以下几个特征。不可逆性:如果h=H(m),并且已知h,则在现有的计算条件下无法推导出m。即无法从哈希值中推导出报文内容。不可替代性:如果h=H(m),并且已知h,则在现有的计算条件下无法找到m’,使得h=H(m’)。即无法找到另外一个不同的报文,使得该报文的哈希值与已知报文的哈希值相同。2007-10-1012报文摘要与密码哈希函数(续2)无冲突性:如果m1m2,则H(m1)H(m2)。即不同的报文通过哈希运算,必须对应不同的哈希值。满足以上
7、3个特性的哈希函数就称为“密码哈希函数”。目前因特网中常用的密码哈希函数是报文摘要算法MD5,而目前公认较为安全的密码哈希函数是安全哈希算法SHA-1。2007-10-1013报文验证码如果对报文摘要算法产生的报文摘要进行加密,可以得到用于报文身份验证的代码,我们称为报文验证码(英文缩写为MAC)。这种报文验证码可以验证该报文是真实的发送方发出的报文,因为真实的发送方才持有加密的密钥(发送方真实性验证);这种报文验证码也可以验证报文在传递过程中有没有被修改(报文传递的完整性验证)
此文档下载收益归作者所有