- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Hash函数在信息安全中的重要运用
Hash函数在信息安全中的重要运用
学号:09008010124 姓名:罗杨
摘要:随着计算机和Internet在各行各业的广泛应用,信息高速化的交互传递过程中,信息安全问题备受关注。而基于hash函数的各种算法的产生和运用,为信息上一把牢固的安全之锁,md5、sha-1文件校验,加密存储,数字签名,PKI建设等对各种信息有充分的安全保障,能有效地防止攻击,保证真实信息不被修改或者泄露。
关键词:哈希 hash md5 数字签名 PKI 散列 校验 公钥 私钥
一、定义
Hash,一般翻译做散列,也有直接音译为哈希的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。HASH主要用于信息安全领域中加密算法,他把一些不同长度的信息转化成杂乱的128位的编码里,叫做Hash值。
算法举例
1、MD4
MD4(RFC 1320)是 MIT 的 Ronald L. Rivest 在 1990 年设计的,MD 是 Message Digest 的缩写。它适用在32位字长的处理器上用高速软件实现--它是基于 32 位操作数的位操作来实现的。
MD4散列的例子:
MD4 () = 31d6cfe0d16ae931b73c59d7e0c089c0
MD4 (a) = bde52cb31de33e46245e05fbdbd6fb24
MD4 (abc) = a448017aaf21d8525fc10ae87aa6729d
MD4 (message digest) = d9130a8164549fe818874806e1c7014b
2、MD5
MD5(RFC 1321)是 Rivest 于1991年对MD4的改进版本。它对输入仍以512位分组,其输出是4个32位字的级联,与 MD4 相同。MD5比MD4来得复杂,并且速度较之要慢一点,但更安全,在抗分析和抗差分方面表现更好。
MD5散列例子:
MD5 () = d41d8cd98f00b204e9800998ecf8427e
MD5 (a) = 0cc175b9c0f1b6a831c399e269772661
MD5 (abc) = 900150983cd24fb0d6963f7d28e17f72
MD5 (message digest) = f96b697d7cb7938d525a2f31aaf161d0
3、SHA1
SHA1是由NIST NSA设计为同DSA一起使用的,它对长度小于264的输入,产生长度为160bit的散列值,因此抗穷举(brute-force)性更好。
SHA1散列的例子:
SHA1 (abc) = a9993e36 4706816a ba3e2571 7850c26c 9cd0d89d
SHA1 (abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq)
= 84983e44 1c3bd26e baae4aa1 f95129e5 e54670f1
MD5 和 SHA1 可以说是目前应用最广泛的Hash算法,而它们都是以 MD4 为基础设计的。
三、函数特性
1、单向性(one-way),从预映射,能够简单迅速的得到散列值,而在计算上不可能构造一个预映射,使其散列结果等于某个特定的散列值,即构造相应的M=H-1(h)不可行。这样,散列值就能在统计上唯一的表征输入值,因此,密码学上的 Hash 又被称为消息摘要(message digest),就是要求能方便的将消息进行摘要,但在摘要中无法得到比摘要本身更多的关于消息的信息。
2、是抗冲突性(collision-resistant),即在统计上无法产生2个散列值相同的预映射。给定M,计算上无法找到M,满足H(M)=H(M) ,此谓弱抗冲突性;计算上也难以寻找一对任意的M和M,使满足H(M)=H(M) ,此谓强抗冲突性。要求强抗冲突性主要是为了防范所谓生日攻击(birthday attack),在一个10人的团体中,你能找到和你生日相同的人的概率是2.4%,而在同一团体中,有2人生日相同的概率是11.7%。类似的,当预映射的空间很大的情况下,算法必须有足够的强度来保证不能轻易找到相同生日的人。
四、应用举例
1、文件校验
MD5 Hash算法的数字指纹特性,使它成为目前应用最广泛的一种文件完整性校验算法,它常被用在下面的2种情况下:
第一是文件传送后的
文档评论(0)