欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第6章-数据的完整性保护.优秀PPT.ppt

    • 资源ID:57460425       资源大小:885KB        全文页数:47页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第6章-数据的完整性保护.优秀PPT.ppt

    第第6章章 数据的完整性爱护数据的完整性爱护指导老师:李云亮指导老师:李云亮本章要求数据完整性爱护技术,包括信息摘录技术和数字签名技术了解信息摘录技术的平安散列标准SHS了解数字签名技术的一般概念和常见的数字签名技术驾驭数字签名标准DSS计算机网络系统引入储存状态-静态用户数据和系统数据系统的工作主要依靠于储存状态的数据数据系统级的完整性爱护较少数数 据据传输状态-动态用户数据系统的工作不依靠于传输状态的数据由网络传输机制供应完整性爱护储存状态数据完整性保证储存状态数据的完整性,可以实行管理方面和技术方面的措施。保证储存状态数据的完整性,可以实行管理方面和技术方面的措施。口令机制口令机制资源访问机制资源访问机制 数据校验技术 可以对要爱护的数据依据确定的规则产生一些校验码,并且把这些校验友码记录下来。数据校验技术即完整性检查数据校验的要求1.校验码会随数据块的变更而变更2.依据校验码很难还原出原始数据本章主要内容6.1 信息摘要技术信息摘要技术6.2 数字签名数字签名6.1 信息摘要技术信息摘要技术6.1.1 信息摘要技术基本原理信息摘要技术基本原理6.1.2 MD5算法算法6.1.3 平安散列标准平安散列标准 6.1.4 HMAC 6.1.1 信息摘要技术基本原理信息摘要技术基本原理杂凑函数H是一公开函数,用于将随意长的消息M映射为较短的、固定长度的一个值H(M),作为认证符,称函数值H(M)为杂凑值、杂凑码或消息摘要。简洁的说,hash函数就是把随意长的输入字符串变更成固定长的输出字符串的一种函数。通俗得说,hash函数用来生成信息的摘要。输出字符串的长度称为hash函数的位数。在信息平安技术中,散列(Hash)函数供应了验证消息的完整性这一服务,它对不同长度的输入消息,产生固定长度的输出。这个固定长度的输出称为原输入消息的“散列”或“信息摘要”(Messagedigest)。目前应用最为广泛的hash函数是SHA-1和MD5,大多是128位和更长hash函数在现实生活中应用特别广泛。很多下载网站都供应下载文件的MD5码校验,可以用来判别文件是否完整。另外,比如在WordPress的数据库,全部密码都是保存的MD5码,这样即使数据库的管理员也无法知道用户的原始密码,避开隐私泄露(很多人在不同地方都是用的同一个密码)。假如两个输入串的hash函数的值一样,则称这两个串是一个碰撞(Collision)。既然是把随意长度的字符串变成固定长度的字符串,所以,必有一个输出串对应无穷多个输入串,碰撞是必定存在的。一个“优良”的hash函数f应当满足以下三个条件:1.随意y,找x,使得f(x)=y,特别困难。2.给定x1,找x2,使得f(x1)=f(x2),特别困难。3.找x1,x2,使得f(x1)=f(x2),特别困难。上面的“特别困难”的意思是除了枚举外不行能有别的更快的方法。比如第3条,依据生日定理,要想找到这样的x1,x2,理论上须要大约2(n/2)的枚举次数。l名称:名称:Hash Function、哈希函数、单向杂凑函数、数据(消息)摘、哈希函数、单向杂凑函数、数据(消息)摘要函数要函数l单向散列函数单向散列函数 H(M)作用于一随意长度的消息作用于一随意长度的消息 M,它返回一固定长,它返回一固定长度的散列值度的散列值 h:l h=H(M)l单向散列函数的特性:单向散列函数的特性:给定给定 M,很简洁计算,很简洁计算 h。给定给定 h,依据,依据 h=H(M)计算计算 M 很难。很难。给定给定 M,要找到另一消息,要找到另一消息 M,并满足,并满足 H(M)=H(M)很难。很难。l单向散列函数的重要之处就是赐予单向散列函数的重要之处就是赐予 M 唯一的唯一的“指纹指纹”。l密码学上常用的单向散列函数有密码学上常用的单向散列函数有RSA公司公司MD系列中的系列中的MD2、MD4、MD5,美,美国国NIST的的SHA、SHA-1,欧盟,欧盟RIPE项目的项目的RIPEMD、RIPEMD-128、RIPEMD-160等。等。6.1.2 MD5算法算法MD系列单向散列函数是系列单向散列函数是Ron Rivest设计的,包括设计的,包括MD2、MD4和和MD5。MD表示消息摘要(表示消息摘要(Message Digest)MD5以以512位分组来处理输入文本,每一分组又划分为位分组来处理输入文本,每一分组又划分为16个个32位子分组。算法的输出由四个位子分组。算法的输出由四个32位分组组成,将它们位分组组成,将它们级联形成一个级联形成一个128位散列值。即产生位散列值。即产生128位的消息摘要位的消息摘要 MD5的特点的特点:基本思想与基本思想与MD4相同:相同的信息块长度,相同的信息摘相同:相同的信息块长度,相同的信息摘录初值,相同的填充录初值,相同的填充 比比MD4更平安,但效率更低更平安,但效率更低 MD5的平安性弱点在于其压缩函数的冲突已经被找到。的平安性弱点在于其压缩函数的冲突已经被找到。1995年有论文指出,花费年有论文指出,花费 1,000万美元,设计找寻冲突的万美元,设计找寻冲突的特制硬件设备,平均在特制硬件设备,平均在24天内可以找出一个天内可以找出一个MD5的冲突。的冲突。MD5算法描述:假设有一个b位长度的输入信号,希望产生它的报文摘要,此处b是一个非负整数,b也可能是0,不确定必需是8的整数倍,它可能是随意大的长度(1)补位:MD5算法是对输入的数据进行补位,使得假如数据位长度LEN对512求余的结果是448。即数据扩展至K*512+448位。即K*64+56个字节,K为整数。补位操作始终要执行,即使数据长度LEN对512求余的结果已是448。具体补位操作:补一个1,然后补0至满足上述要求。总共最少要补一位,最多补512位。(2)补数据长度用一个64位的数字表示数据的原始长度b,把b用两个32位数表示。那么只取B的低64位。当遇到b大于264这种极少遇到的状况时,这时,数据就被填补成长度为512位的倍数。也就是说,此时的数据长度是16个字(32位)的整数倍数(3)初始化MD缓冲器用一个四个字的缓冲器(A,B,C,D)来计算报文摘要,A,B,C,D分别是32位的寄存器,初始化运用的是十六进制表示的数字A=0X01234567B=0X89abcdefC=0Xfedcba98D=0X76543210(4)处理位操作函数首先定义4个协助函数,每个函数的输入是三个32位的字,输出是一个32位的字。X,Y,Z为32位整数。F(X,Y,Z)=XYvnot(X)ZG(X,Y,Z)=XZvYnot(Z)H(X,Y,Z)=XxorYxorZI(X,Y,Z)=Yxor(Xvnot(Z)(5)输出结果报文摘要的产生后的形式为:A,B,C,D。也就是低位字节A起先,高位字节D结束。报文摘要实现示意图6.1.3 平安散列标准平安散列标准 平安散列标准SHA(SecureHashAlgorithm)算法由NIST开发,并在1993年作为联邦信息处理标准公布。在1995年公布了其改进版本SHA-1SHA与MD5的设计原理类似,同样也按512位数据块为单位来处理输入,但它产生160位的消息摘要,具有比MD5更强的平安性SHA基本思想基本思想(1)输入要求小于264,输出为160比特(5个字,分别记为A、B、C、D、E)(2)将输入信息分成若干个512比特定长块(3)每一块与当前的信息摘要值结合,产生信息摘要的下一个中间结果,直至处理完毕(4)每一个信息块运用5遍扫描处理(5)填充方式与MD4相同,将输入信息填充为512比特的整数倍(6)效率略低于MD5,但强度略高SHA基本算法基本算法对消息填充与MD5的步骤完全相同附加消息的长度与MD5的步骤类似,不同之处在于以big-endian(大字节序,高字节)方式表示填充前消息的长度。即步骤留出的64比特当作64比特长的无符号整数对MD缓冲区初始化算法运用160比特长的缓冲区存储中间结果和最终杂凑值,缓冲区可表示为5个32比特长的寄存器(A,B,C,D,E),每个寄存器都以big-endian方式存储数据,其初始值分别为A=67452301,B=EFCDAB89,C=98BADCFB,D=10325476,E=C3D2E1F0以分组为单位对消息进行处理每一分组Yq都经一压缩函数处理,压缩函数由4轮处理过程构成,每一轮又由20步迭代组成。4轮处理过程结构一样,但所用的基本逻辑函数不同,分别表示为f1,f2,f3,f4。每轮的输入为当前处理的消息分组Yq和缓冲区的当前值A,B,C,D,E,输出仍放在缓冲区以替代A,B,C,D,E的旧值,每轮处理过程还需加上一个加法常量Kt,其中0t79表示迭代的步数。80个常量中事实上只有4个不同取值。Wt是由当前512比特分组导出的一个32比特字输出消息的L个分组都被处理完后,最终一个分组的输出即为160比特的消息摘要SHA分组处理框图160160A B C D EA B C D EA B C D EA B C D Ef1,K,W01920步f2,K,W203920步f3,K,W405920步f4,K,W607920步+CVqYqCVq-1512SHA与与MD5的比较的比较(1)抗穷搜寻攻击的强度由于SHA和MD5的消息摘要长度分别为160和128,所以用穷搜寻攻击找寻具有给定消息摘要的消息分别需做O(2160)和O(2128)次运算,而用穷搜寻攻击找出具有相同消息摘要的两个不同消息分别需做O(280)和O(264)次运算。因此SHA抗击穷搜寻攻击的强度高于MD5抗击穷搜寻攻击的强度(2)抗击密码分析攻击的强度由于SHA的设计准则未被公开,所以它抗击密码分析攻击的强度较难推断,似乎高于MD5的强度(3)速度由于两个算法的主要运算都是模232加法,因此都易于在32位结构上实现。但比较起来,SHA的迭代步数(80步)多于MD5的迭代步数(64步),所用的缓冲区(160比特)大于MD5运用的缓冲区(128比特),因此在相同硬件上实现时,SHA的速度要比MD5的速度慢。(4)简洁与紧致性两个算法描述起来都较为简洁,实现起来也较为简洁,都不须要大的程序和代换表(5)数据的存储方式MD5运用little-endian方式,SHA运用big-endian方式。两种方式相比看不出哪个更具优势,之所以运用两种不同的存储方式是因为设计者最初实现各自的算法时,运用的机器的存储方式不同6.1.4 HMAC数据认证算法反映了传统上构造MAC(-消息鉴别码MessageAuthenticationCode也叫密码校验和)最为普遍运用的方法,即基于分组密码的构造方法。但近年来探讨构造MAC的爱好已转移到基于密码杂凑函数的构造方法,因为:密码杂凑函数(如MD5、SHA)的软件实现快于分组密码(如DES)的软件实现;密码杂凑函数的库代码来源广泛;密码杂凑函数没有出口限制,而分组密码即运用于MAC也有出口限制。杂凑函数并不是为用于MAC而设计的,由于杂凑函数不运用密钥,因此不能干脆用于MAC。目前已提出了很多将杂凑函数用于构造MAC的方法,其中HMAC就是其中之一,已作为RFC2104被公布,并在IPSec和其他网络协议(如SSL)中得以应用RFC2104列举了HMAC的以下设计目标:可不经修改而运用现有的杂凑函数,特殊是那些易于软件实现的、源代码可便利获得且免费运用的杂凑函数。其中镶嵌的杂凑函数可易于替换为更快或更平安的杂凑函数。保持镶嵌的杂凑函数的最初性能,不因用于HMAC而使其性能降低。以简洁方式运用和处理密钥。在对镶嵌的杂凑函数合理假设的基础上,易于分析HMAC用于认证时的密码强度。其中前两个目标是HMAC被公众普遍接受的主要缘由,这两个目标是将杂凑函数当作一个黑盒运用,这种方式有两个优点:第一,杂凑函数的实现可作为实现HMAC的一个模块,这样一来,HMAC代码中很大一块就可事先准备好,无需修改就可运用;其次,假如HMAC要求运用更快或更平安的杂凑函数,则只需用新模块代替旧模块,例如用实现SHA的模块代替MD5的模块。最终一条设计目标则是HMAC优于其他基于杂凑函数的MAC的一个主要方面,HMAC在其镶嵌的杂凑函数具有合理密码强度的假设下,可证明是平安的HMAC基本思想基本思想利用对称密钥K和单向函数H生成信息鉴别码计算HMAC须要一个散列函数hash(可以是md5或者sha-1)和一个密钥key。用L表示hash函数输出字符串长(md5是16),用B表示数据块的长度(md5和sha-1的分割数据块长都是64)。密钥key的长度可以小于等于数据块长B,假如大于数据块长度,可以运用hash函数对key进行转换,结果就是一个L长的key。然后创建两个B长的不同字符串:innerpad=长度为B的036outterpad=长度为B的05C计算输入字符串str的HMAC:hash(keyoutterpad,hash(keyinnerpad,str)HMAC特点特点(1)干脆运用现有的单向函数,计算效率和平安强度依靠于所选用的单向函数,密钥和单向函数的管理比较简洁;(2)密钥可以为随意长度。若超过信息块长度B,则首先运用H函数缩短至B。密钥长度K不应小于H函数的输出长度L;(3)计算效率较高,但预先计算的值须要像密钥那样爱护得很好。HMAC的平安性的平安性 基于密码杂凑函数构造的MAC的平安性取决于镶嵌的杂凑函数的平安性,而HMAC最吸引人的地方是它的设计者已经证明白算法的强度和嵌入的杂凑函数的强度之间的准确关系,证明白对HMAC的攻击等价于对内嵌杂凑函数的下述两种攻击之一:攻击者能够计算压缩函数的一个输出,即使IV是随机的和隐私的。攻击者能够找出杂凑函数的碰撞,即使IV是随机的和隐私的。6.2 数字签名数字签名数字签字由公钥密码发展而来,它在网络平安,包括身份认证、数据完整性、不行否认性以及匿名性等方面有着重要应用6.2.1 数字签名的概念数字签名的概念6.2.2 基于公钥密码体制的数字签名基于公钥密码体制的数字签名6.2.3 基于私钥密码体制的数字签名基于私钥密码体制的数字签名6.2.4 数字签名标准数字签名标准DSS6.2.1 数字签名的概念数字签名的概念数字签名(DigitalSignature)可解决手写签名中的签字人否认签字或其他人伪造签字等问题。因此,被广泛用于银行的信用卡系统、电子商务系统、电子邮件以及其他须要验证、核对信息真伪的系统中。类似于手书签字,数字签字应具有以下性质:能够验证签字产生者的身份,以及产生签字的日期和时间。能用于证明被签消息的内容。数字签字可由第三方验证,从而能够解决通信双方的争议。数字签字应满足的要求签字的产生必需运用发方独有的一些信息以防伪造和否认。签字的产生应较为简洁。签字的识别和验证应较为简洁。对已知的数字签字构造一新的消息或对已知的消息构造一假冒的数字签字在计算上都是不行行的。数字签名具有的功能收方能够确认发方的签名,但不能伪造;发方发出签过名的信息后,不能再否认;收方对收到的签名信息也不能否认;一旦收发方出现争吵,仲裁者可有足够的证据进行评判。6.2.2 基于公钥密码体制的数字签名基于公钥密码体制的数字签名基于RSA的数字签名ElGamal数字签名Schnorr签字体制基于RSA的数字签名体制参数。选两个保密的大素数p和q,计算n=pq,(n)=(p-1)(q-1);选一整数e,满足1e(n),且gcd(n),e)=1;计算d,满足de1mod(n);以e,n为公开钥,d,n为隐私钥。签字过程。设消息为M,对其签字为SMdmodn验证过程。接收方在收到消息M和签字S后,验证MSemodn是否成立,若成立,则发送方的签字有效。ElGamal数字签名(1)体制参数p:大素数;g:Z*p的一个生成元;x:用户A的隐私钥,xRZ*p;y:用户A的公开钥,ygx(modp)。(2)签字的产生过程对于待签字的消息m,A执行以下步骤:计算m的杂凑值H(m)。选择随机数k:kZ*p,计算rgk(modp)。计算s(H(m)-xr)k-1(modp-1)。以(r,s)作为产生的数字签字。(3)签字验证过程接收方在收到消息m和数字签字(r,s)后,先计算H(m),并按下式验证:Schnorr签字体制(1)体制参数p:大素数,p2512;q:大素数,q|(p-1),q2160;g:gRZ*p,且gq1(modp);x:用户A的隐私钥,1xq;y:用户A的公开钥,ygx(modp)。(2)签字的产生过程对于待签字的消息m,A执行以下步骤:选择随机数k:1kq,计算rgk(modp)。计算e=H(r,m)。计算sxe+k(modq)。以(e,s)作为产生的数字签字。(3)签字验证过程接收方在收到消息m和数字签字(e,s)后,先计算rgsy-e(modp),然后计算H(r,m),并按下式验证数字签名示意图6.2.3 基于私钥密码体制的数字签名基于私钥密码体制的数字签名基于公钥算法数字签名的缺点是计算量很大,强度不如对称密钥算法。发送方A依据单钥加密算法以与接收方B共享的密钥K对消息M加密后的密文作为对M的数字签字发往B。该系统能向B保证所收到的消息的确来自A,因为只有A知道密钥K。再者B复原出M后,可信任M未被篡改,因为敌手不知道K就不知如何通过修改密文而修改明文。具体来说,就是B执行解密运算Y=DK(X),假如X是合法消息M加密后的密文,则B得到的Y就是明文消息M,否则Y将是无意义的比特序列。基于私钥密码体制的数字签名缺陷签名比报文长的多。签名密钥若不接受一次一密方式,则每次签名都会把n个密钥泄漏出去,重复运用相同的签名密钥是很担忧全的;而一次一密方式的密钥管理负担很重。对称密钥算法则由于双方共享密钥,接收方可以伪造签名,须要公证方支持才能好用化。6.2.4 数字签名标准数字签名标准DSS设计思想签名者的计算实力较低且计算时间要短,而验证者计算实力较强。DSA是在ElGamal和Schnorr两个签字方案的基础上设计的,其平安性基于求离散对数的困难性。DSS算法步骤全局公开钥p:满足2L-1p2L的大素数,其中512L1024且L是64的倍数。q:p-1的素因子,满足2159q2160,即q长为160比特。g:gh(p-1)/qmodp,其中h是满足1h1的任一整数。用户隐私钥xx是满足0 xq的随机数或伪随机数。用户的公开钥yygxmodp。用户为待签消息选取的隐私数kk是满足0kq的随机数或伪随机数。DSA签名和验证过程试验题试验题 试验试验6.1 运用运用MD5sum创建创建HASH校验和校验和要求:了解要求:了解HASH算法的工作原理以及算法的工作原理以及md5sum程序的运用程序的运用 习题习题6.1信息摘要技术基本原理是什么?6.2简述MD5的工作过程。6.3SHA与MD5的区分与联系是什么?6.4HMAC的原理是什么?6.5什么是数字签名?其功能是什么?数字签名是如何实现的?6.6简述DSS的算法步骤。6.7在DSS数字签名标准中,取p=83=241+1,q=41,h=2,于是g224mod83,若取x=57,则ygx457=77mod83。在对消息M=56签名时,选择k=23,计算签名并进行验证。本章要求数据完整性爱护技术,包括信息摘录技术和数字签名技术了解信息摘录技术的平安散列标准SHS了解数字签名技术的一般概念和常见的数字签名技术驾驭数字签名标准DSS感谢大家!感谢大家!

    注意事项

    本文(第6章-数据的完整性保护.优秀PPT.ppt)为本站会员(1398****507)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开