第6章 Hash函数呀呀呀.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第六章

杂凑函数杂凑函数(Hash函数)杂凑函数是密码学的一个基本工具,在数字签名、身份认证和消息的完整性检测等方面有着重要的应用杂凑函数H是一公开函数,用于将任意长的消息M映射为较短的、固定长度的一个值H(M),作为认证符,称函数值H(M)为杂凑值、杂凑码或消息摘要。杂凑码是消息中所有比特的函数,因此提供了一种错误检测能力,即改变消息中任何一个比特或几个比特都会使杂凑码发生改变。特点:H打上了输入数字串的烙印,为数字指纹(DigitalFingerPrint)散列函数的性质(1)一般杂凑函数h(m)算法公开,不需要密钥(2)具有数据压缩功能,可将任意长度的输入数据转换成一个固定长度的输出。(3)对任何给定的m,h(m)易于计算。Hash函数的应用在密码学和数据安全技术中,它是实现有效、安全可靠数字签字和认证的重要工具,是安全认证协议中的重要模块。Hash函数的应用单向杂凑函数要求密码学中所用的杂凑函数必须满足一定安全性的要求,要能防伪造,抗击各种类型的攻击,如生日攻击、中途相遇攻击等等。安全要求:(1)具有单向性。给定消息的散列值h(m),要得到消息m在计算上不可行;(2)具有弱抗碰撞性(Weakcollisionresistance)。对任何给定的消息m,寻找与m不同的消息m’,使得它们的散列值相同,即h(m’)=h(m),在计算上不可行。(3)具有强抗碰撞性(Strongcollisionresistance)。寻找任意两个不同的消息m和m’,使得h(m)=h(m’)在计算上不可行。H是多对一映射杂凑函数是多对一映射,所以必然存在碰撞Hash函数的无碰撞性弱单向杂凑,是在给定M下,考察与特定M的无碰撞性;而强单向杂凑函数是考察输入集中任意两个元素的无碰撞性。显然,对于给定的输入数字串的集合,后一种碰撞要容易实现。因为从下面要介绍的生日悖论知,在N个元素的集中,给定M找与M相匹配的M'的概率要比从N中任取一对元素M,M’相匹配的概率小得多。单向杂凑函数安全性要求杂凑函数的安全性取决于其抗击各种攻击的能力,对手的目标是找到两个不同消息映射为同一杂凑值。一般假定对手知道杂凑算法,采用选择明文攻击法对杂凑函数的基本攻击方法:(1)穷举攻击(或暴力攻击):不涉及杂凑算法的结构,能对任何类型的散列函数进行攻击。其中最典型方法是“生日攻击”:给定初值H0,寻找M’?M,使h(H0,M’)=h(H0,M)。(2)密码分析法,这类攻击方法依赖于对散列函数的结构和代数性质分析,采用针对散列函数弱性质的方法进行攻击。这类攻击方法有中间相遇攻击、修正分组攻击和差分分析等等。生日攻击1生日悖论:在一个会场参加会议的人中,找一个与某人生日相同的概率超过0.5时,所需参会人员为183人。但要问使参会人员中至少有两个同日生的概率超过0.5的参会人数仅为23人。这是因为,对于与某个已知生日的人同日生的概率为1/365,若房中有t人,则至少找到一人与此人同日生的概率为多少。易于解出,当t?183时可使p0.5。第一个人在特定日生的概率为1/365,而第二人不在该日生的概率为(1-1/365),类似地第三人与前两位不同日生的概率为(1-2/365),以此类推,t个人都不同时生日概率为Pt=(1-1/365)(1-2/365)…(1-(t-1)/365),因此,至少有两人于同日生的概率为1-Pt.解之,当t?23时,p0.5。对散列函数的生日攻击与散列函数相关的类似问题可表述如下:给定一个散列函数h的输出长度为n位,共有2n个可能的散列值输出,找x和y满足H(x)=H(y),则尝试多少个报文可以找到一对(假设散列值n比特)显然,最多尝试2n+1个报文,必有一对冲突其实,远在到达2n+1之前,很可能早就找到了(期望2n-1)如果只要达到一定的概率(如1/2),约需尝试多少个不同报文?答案:2n/2杂凑函数的构造(Merkle-Damgard)直接设计散列函数MD5、SHA-1是当前国际通行的两大密码标准。MD5由国际著名密码学家图灵奖获得者兼公钥加密算法RSA的创始人Rivest设计,SHA-1是由美国专门制定密码算法的标准机构——美国国家标准技术研究院(NIST)与美国国家安全局(NSA)设计。两大算法是目前国际电子签名及许多其它密码应用领域的关键技术,广泛应用于金融、证券等电子商务领域。其中,SHA-1早在1994年便为美国政府采纳,目前是美国政府广泛应用的计算机密码系统。MD系列MIT一系列杂凑算法(RonalRivest

文档评论(0)

文档杂货铺 + 关注
实名认证
文档贡献者

电力工程师、注册电气工程师持证人

本店终极目标:您需要的我们这儿都有!

领域认证该用户于2025年06月21日上传了电力工程师、注册电气工程师

1亿VIP精品文档

相关文档