dayugenhao4
dsbanana
采纳率9.1%
2015-12-18 11:31 阅读 2.6k
已采纳

哈希值会不会用完?既然长度固定

有个关于哈希的问题,我一直想不明白.有很多著名软件在官网上公布他们的哈希值,
但据我所知,哈希值长度固定,就是说范围有限(虽然范围很大).那么,我就不明白了,
既然范围有限,你的软件一个哈希值,我的软件一个哈希值,这样用下去,会不会有一天
所有哈希值都用完的?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • 已采纳
    caozhy 从今以后生命中的每一秒都属于我爱的人 2015-12-18 11:48

    理论上会,但是这个值超过了宇宙中原子的个数。即便宇宙中每个原子可以存储一个文件,也不会重复。
    但是,如你所知,hash是会重复的,虽然在自然情况下重复概率可以忽略,但是人为制造相同hash,但是数据不同是可行的,这被叫做hash的碰撞算法。
    山东大学的杨小云教授,就因为破解了md5的碰撞算法,而非常有名。

    点赞 2 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2015-12-18 11:56

    一个md5 hash有32个16进制数组成,相当于16^32,也就是2^128,按照2^10=10^3估算,大约是10^38。构成地球的原子数不超过10^30。10^38相当于超过一亿个地球的原子数。

    点赞 3 评论 复制链接分享
  • dayugenhao4 dsbanana 2015-12-18 15:57

    谢谢两位,领会了~~~~~~~~~~~~~~~~~~~~~~~~`

    点赞 评论 复制链接分享
  • dayugenhao4 dsbanana 2015-12-18 15:57

    傻了,是一个人~~~~~~~~~~~~~~~~~~~~~~~~~~~

    点赞 评论 复制链接分享

相关推荐