- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络安全-第19讲数据的完整性保护(SHA和DSS)-20讲MD5无保护代理方法-21其它代理方法和不可否认签名
Computer Network School of Computer Science Technology Ludong University Xu Bang-Hai bhxu@263.net * 第十九讲 数据的完整性保护 一、信息摘录技术 二、数字签名技术 三、小结 一、信息摘录技术 1.认证的基本概念 保密和认证是信息系统安全的两个重要方面,但它们是两个不同属性问题:认证不能自动提供保密性,而保密性也不能自然地提供认证功能! 认证(Authentication)的主要目的有二: (1)验证信息的发送者是真的,实体认证; (2)验证信息的完整性,消息认证。 信息摘录和数字签名是实现认证基本技术。 信息摘录(message digests)是单向的散列函数,它以定长的信息为输入,把其压缩成一个定长的值输出。 2.信息摘录技术 信息摘录(message digests)是单向的散列函数,它以定长的信息为输入,把其压缩成一个定长的值输出。 信息摘录赋予信息唯一的指纹! 输入的信息改变,则输出的摘录也会相应变化! 山东大学王小云教授成功破译MD5! 3.安全HUSH算法SHA-1 SHA-1是一个具有512位输入和160位输出的迭代Hash函数。 在SHA-1中,所有直接参与计算的数据单元均为32位 除按位与(∧)、或(∨)、非(~)、异或(⊕)、循环左移(?)和循环右移(?)操作外, 涉及到的加法(+)均为模232整数加法。 3.安全HUSH算法SHA-1 SHA-1中的几个主要计算和定义如下: (1)将明文x填充为512位的整数倍 填充方法: 先在明文x的末尾添加一个1, 然后填充若干个0使整个明文的总长度刚好为512位的倍数减64位, 最后填充64位用于表示明文x的原始长度。 如果用|x|代表明文x的长度,且|x|≤264-1,则所填充0的个数d为: d=(447-|x|) mod 512。 (2)用于Hash迭代计算的初始值 SHA-1中有5个用于迭代计算的寄存器A、B、C、D、E,其初始值分别为: A(h0)=0x67 45 23 01 B(h1)=0xef cd ab 89 C(h2)=0x98 ba dc fe D(h3)=0x10 32 54 76 E(h4)=0xc3 d2 e1 f0 (3)将一个512分组mi扩展成80个32位分组mi’ mi=w0w1…w15, mi’=w0w1…w15w16w17…w79 wt=wt ,(t=0,1,…,15) wt=(wt-3⊕wt-8⊕wt-14⊕wt-16) ?1 ,(t=16,17,…,79) (4)SHA-1的非线性函数集合(或称Hash族) 在SHA-1中,按如下形式定义了 80个非线性函数f0,f1,…,f79和 80个相应常量K0,K1,…,K79。 ft(X,Y,Z)=(X∧Y)∨(~X∧Z) , Kt=0x5A827999 , (t=0,1,…,19) ft(X,Y,Z)=X⊕Y⊕Z , Kt=0x6ED9EBA1 , (t=20,21,…,39) ft(X,Y,Z)=(X∧Y)∨(X∧Z)∨(Y∧Z) , Kt=0x8F1BBCDC , (t=40,41,…,59) ft(X,Y,Z)=X⊕Y⊕Z , Kt=0xCA62C1D6 , (t=60,61,…,79) (5)SHA-1的主迭代过程 SHA-1的迭代次数就是明文的分组数n, 对于每一512位分组mi(设mi=w0w1…w15)需要如下迭代计算过程: ① 依次计算wt(t=16,17,…,79) wt=(wt-3⊕wt-8⊕wt-14⊕wt-16) ?1; ② 向寄存器A、B、C、D、E赋值 A=h0; B=h1; C=h2; D=h3; E=h4 ③ 完成一次Hash运算过程 对于t从0到79,重复下列计算操作: temp=(A?5)+ft(B,C,D)+E+wt+Kt ; E=D ; D=C ; C=B?30 ; B=A ; A=temp; + + + + + ft A?5 wt Kt ?30 E D C B A E D C B A ④ 产生本次Hash运算结果 h0=h0+A ; h1=h1+B ; h2=h2+C ; h3
文档评论(0)