第06章数据完整性机制



《第06章数据完整性机制》由会员分享,可在线阅读,更多相关《第06章数据完整性机制(74页珍藏版)》请在文档大全上搜索。
1、第第6 6章章 完整性验证机制完整性验证机制上课教师:田立勤上课教师:田立勤 日日 期期:20201010年年1010月月 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤复习复习v1、请叙述非对称加密的算法步骤、请叙述非对称加密的算法步骤v2、对称密钥加密和非对称密钥加密的优缺点、对称密钥加密和非对称密钥加密的优缺点v3、如何结合二者做到安全的数据传输、如何结合二者做到安全的数据传输 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤实际系统中存在完整性威胁实际系统中存在完整性威胁v例如,黑客可能将原来合法通信者要例如,黑客可能将原来合法通信者要传传的信息的
2、信息“ “命令你部命令你部坚坚守待援守待援” ”改成改成“ “命令你部立即撤离命令你部立即撤离阵阵地地” ”,显显然,如果黑客的然,如果黑客的这这种攻种攻击击行行为为得逞,将会得逞,将会给战给战争争带带来来严严重的影响。重的影响。v定定义义3.1 数据完整性数据完整性 数据完整性是数据完整性是防止防止非法非法实实体体对对交交换换数据的修改、插入、数据的修改、插入、替替换换和和删删除,或者如果被修改、插入、替除,或者如果被修改、插入、替换换和和删删除除时时可可以被以被检测检测出来出来。数据完整性可以通。数据完整性可以通过过消息消息认证认证模式来保模式来保证证。 第第6 6章章 数据完整性验证机制
3、数据完整性验证机制 田立勤田立勤基本思路基本思路v增加信息增加信息验证码对验证码对数据完整性数据完整性进进行行验证验证v(1)发发送方根据要送方根据要发发送的原信息送的原信息M0,利用,利用验证码验证码函数函数产产生与生与M0密切相关的信息密切相关的信息验证码验证码C0;v(2)发发送方把原始信息送方把原始信息M0和信息和信息验证码验证码C0合在一起,并合在一起,并通通过过网网络发络发送送给给接收方;接收方;v(3)接收方)接收方对对所收到的原信息和所收到的原信息和验证码进验证码进行分离,假行分离,假设设分分别别为为M1和和C1,因,因为这为这两个信息可能已被被两个信息可能已被被篡篡改;改;
4、第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤基本思路基本思路v(4)接收方使用与原始信息相同的信息)接收方使用与原始信息相同的信息验证码验证码函数(双方函数(双方事先事先约约定好的)定好的)对对收到的信息部分收到的信息部分M1计计算其自己的信息算其自己的信息验验证码证码C2;v(5)接收方将自己制作的接收方信息)接收方将自己制作的接收方信息验证码验证码C2同分离出同分离出来的信息来的信息验证码验证码C1进进行行对对比,如果相等,接收方断定收到比,如果相等,接收方断定收到的信息的信息M1与用与用户发户发送的信息送的信息M0是相同的,如果不相等,是相同的,如果不相等,则则接收
5、方知道原始信息已接收方知道原始信息已经经被被篡篡改改过过 ,其模型如下,其模型如下图图所示。所示。 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤基本思路基本思路 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤数据完整性特性机制的评价标准数据完整性特性机制的评价标准v完整性完整性验证验证的安全性的安全性消息完整性安全要求消息完整性安全要求对对接收的数据的任何改接收的数据的任何改动动都能被都能被发发现现,对对于于给给定的消息定的消息m1和其和其验证码验证码H(m1),找到),找到满满足足m2m1,且,且H(m2)H(m1)的)的m2在在计计算上不可行算上不
6、可行v完整性完整性 验证验证中加密的安全中加密的安全v数据完整性数据完整性验证验证的一些机制需要的一些机制需要对对其中的内容其中的内容进进行加密,例行加密,例如摘要如摘要 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤数据完整性特性机制的评价标准数据完整性特性机制的评价标准v数据完整性数据完整性验证验证的信息有效率的信息有效率数据完整性数据完整性验证验证的有效率是指原信息部分的有效率是指原信息部分长长度与合并后度与合并后总总信息(包括原消息和信息(包括原消息和验证码验证码)的)的长长度之比。度之比。v完整性完整性验证验证算法的性能算法的性能v数据完整性数据完整性验证验证包括
7、包括发发送方送方计计算算验证码验证码,进进行加密,接行加密,接收方重新收方重新计计算算验证码验证码,进进行解密,比行解密,比较较等。等。 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤(1 1)基于数据校验思想的)基于数据校验思想的数据完整性验证机制数据完整性验证机制v步步骤骤1:A计计算数据算数据M0的冗余的冗余码码N0;v步步骤骤2:A将前将前M0和和N0合在一起,通合在一起,通过过网网络发络发送送给给B;v步步骤骤3:B收到合并的信息后,将二者分开,收到合并的信息后,将二者分开,设为设为M1和和N1;v步步骤骤4:B用与原始信息相同的循用与原始信息相同的循环环冗余方法
8、重新冗余方法重新计计算信息算信息M1的冗余的冗余码码N2;v步步骤骤5:B将将计计算的冗余算的冗余码码N2同分离的冗余同分离的冗余码码N1进进行行对对比比,如果相等,如果相等,B断定信息是完整的,如果不相等,断定信息是完整的,如果不相等,则则B断定断定信息是不完整的。信息是不完整的。 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤评价评价v能能检测检测出数据出数据发发生生错误错误的机制并不一定能的机制并不一定能对对数据完整性数据完整性检检测测有效有效例如,如果攻例如,如果攻击击者修改原数据的者修改原数据的同同时时也根据国也根据国际标际标准的准的CRC多多项项式重新式重新计计
9、算算CRC,并且替,并且替换换原来的原来的CRC,这时这时候虽然候虽然发发送的数据和接收的数据已送的数据和接收的数据已经经不一致了,但由于不一致了,但由于原消息和原消息和CRC是匹配的,因此用是匹配的,因此用CRC不能不能检测检测出来出来v解决方法:解决方法:对对要要发发送的数据送的数据进进行加密行加密 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤(2 2)基于错误检测码与对称密钥加)基于错误检测码与对称密钥加密的完整性验证机制密的完整性验证机制v步步骤骤1:A用用错误检测码错误检测码算法算法F计计算信息算信息M0的的错误检测码错误检测码(FCS0););v步步骤骤2:A
10、将将M0和和FCS0合在一起,合在一起,A使用使用K加密合并的信息加密合并的信息,并通,并通过过网网络发络发送送给给B;v步步骤骤3:B收到加密的信息后,用同一密收到加密的信息后,用同一密钥钥K把密文解密,把密文解密,并将二者分开,并将二者分开,设为设为M1和和FCS1; 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤(2)(2)基于错误检测码与对称密钥加密基于错误检测码与对称密钥加密的完整性验证机制的完整性验证机制v步步骤骤4:B用与原始信息相同的用与原始信息相同的错误检测码计错误检测码计算方法算方法F重新重新计计算信息算信息M1的的的的错误检测码错误检测码FCS2;v步
11、步骤骤5:B将将计计算的算的错误检测码错误检测码FCS2同分离的同分离的错误检测码错误检测码FCS1进进行行对对比,如果相等,比,如果相等,B断定信息是完整的,如果不断定信息是完整的,如果不相等,相等,则则B断定信息遭到断定信息遭到篡篡改。改。 第第6 6章章 数据完整性验证机制数据完整性验证机制 田立勤田立勤评价评价v这这个机制防止了攻个机制防止了攻击击者同者同时时把原信息和把原信息和错误检测码错误检测码替替换换并并且保持它且保持它们们之之间间的正确匹配关系的攻的正确匹配关系的攻击击,因,因为为密密钥钥只有双只有双方知道,攻方知道,攻击击者同者同时时替替换换后没后没办办法用双方的密法用双方的