第章 数据完整性机制.ppt
文本预览下载声明
主要内容 3.1 网络安全中数据完整性概述 3.2 数据完整性机制的评价标准 3.3 网络安全中数据完整性验证机制与评价 3.4 MD5消息摘要计算算法与评价 3.5 MD5算法在数据安全方面的应用实例 3.3 网络安全中数据完整性验证机制与评价 3.3.1 基于数据校验的完整性验证机制与评价 在计算机网络原理中的循环冗余校验的检错技术,目的就是防止计算机网络中传输的数据帧出现错误,导致发送的数据帧与接收的数据帧不一致 网络安全中的数据完整性验证机制与计算机网络原理中的检错技术类似。 参照CRC冗余码 基于数据校验的完整性验证机制 步骤1:A计算数据M0的冗余码N0; 步骤2:A将M0和N0合在一起,通过网络发送给B; 步骤3:B收到合并的信息后,将二者分开,设为M1和N1; 数据校验和完整性验证的区别 数据校验是为了检查出因为网络自身的原因导致的数据不一致,是由网络系统随机产生的 数据完整性验证是为了检查出可能的恶意主动攻击者造成的数据不一致,后者会处心积虑地避开完整性验证的校验。 3.3.3 基于消息摘要与对称密钥加密的完整性验证机制 A用消息摘要算法H计算信息M0的消息摘要MD0 A将M0和MD0和在一起,并使用K加密合并的消息,并通过网络发送给B B收到加密的消息后,用同一密钥K把密文解密,并将二者分开,分别设为M1和MD1 基于消息摘要与对称密钥加密的完整性验证机制 B用与原始信息相同的消息摘要计算方法H重新计算M1的消息摘要MD2 B将计算的消息摘要MD2与分离出来的消息摘要MD1进行对比,如果相等,B断定信息是完整的;如果不相等,B就断定信息遭到篡改 机制评价 优点: 防止攻击者篡改消息 防止攻击者同时把信息部分和消息摘要部分替换并同时保持它们之间的匹配关系的攻击 机制评价 缺点: 双方需共享密钥K,存在密钥的发布问题 3.3.5 基于对称密钥直接加密原消息的完整性验证机制与评价 加密本身提供一种消息完整性验证方法,假设A、B双方共享密钥K,并且发送的是有意义的消息,则直接加密原消息也可以起到完整性验证的作用。 由于攻击者不知道密钥K,因此攻击者就不知道如何改变密文中的消息位才能在明文中产生预期的改变。接收方可以根据解密后的明文是否有意义来进行完整性验证。 实现机制 A使用对称密钥机密机制加密M0,并通过网络发送给B B收到加密的信息后,用同一密钥解密 B根据解密后的明文是否有意义来判断消息是否完整,如果有意义,B认为数据是完整的,如果是无意义的乱码,B就认为数据遭到篡改。 机制评价 优点: 不增加额外的验证码,数据完整性的信息有效率高 具有保密性和完整性验证的双重功能 缺点: 密钥的发布问题 改进: 与非对称密钥加密体制结合来解决密钥的发布 3.3.7 加密原消息作为验证码的完整性验证机制 A使用对称密钥加密机制加密M0,设为EK(M0),作为验证码 A将M0和EK(M0)合在一起,并通过网络发送给B B收到数据后,将两者分开,设原消息为M1(可能已被篡改),用同一密钥K解密验证码,解密的结果设为M2 B将M2与M1进行对比,如果相等,B断定信息是完整的;如果不相等,B就断定信息遭到篡改。 机制评价 优点: 不需要额外算法去产生验证码,只需把加密的原消息作为验证码(篡改、替换) 缺点: 验证码太大 没有保密作用 算法改进 对于密钥的发布问题,可以采用基于哈希函数的完整性验证机制来改进 哈希函数的计算类似MAC,但不需要双方共享密钥 hash与MAC的区别 MAC在产生消息认证码时需要对全部数据进行加密,速度慢; Hash是一种直接产生认证码的方法,不需要双方共享密钥 Hash可以用于数字签名 MAC函数与加密函数的联系与区别 MAC函数与加密函数类似,需要明文、密钥和算法的参与 MAC算法不要求可逆性,而加密算法必须是可逆的。 复习 简述基于数据校验的完整性验证机制 简述基于消息摘要与对称密钥加密的完整性验证机制 简述基于非对称密钥和对称密钥结合的完整性性验证机制 MD2简介 Rivest在1989年开发出MD2算法。 在这个算法中,首先对信息进行数据补位,使信息的字节长度是16的倍数。 然后,以一个16位的检验和追加到信息末尾,并且根据这个新产生的信息计算出散列值。 后来,Rogier和Chauvaud发现如果忽略了检验将和MD2产生冲突。MD2算法加密后结果是唯一的。 MD4简介 Rivest在1990年又开发出MD4算法。 Den boer和Bosselaers以及其他人很快的发现了攻击MD4版本中第一步和第三步的漏洞。Dobbertin向大家演示了如何利用一部普通的个人电脑在几分钟内找到MD4完整版本中的冲突。毫无疑问,MD4就此被淘汰掉了。 尽管MD4算法在安全上有个这么大的漏洞,但
显示全部