首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >MD5是否仍然足够好,可以唯一地标识文件?

MD5是否仍然足够好,可以唯一地标识文件?
EN

Stack Overflow用户
提问于 2010-10-27 18:28:13
回答 8查看 64.7K关注 0票数 146

考虑到所有MD5算法和安全问题的破坏,MD5散列文件仍然被认为是一种足够好的唯一标识它的方法吗?在这里,安全性不是我最关心的问题,但唯一地标识每个文件才是。

有什么想法吗?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2010-10-27 18:33:54

是。从安全角度来看,MD5已经完全崩溃,但意外碰撞的可能性仍然很小。只需确保这些文件不是由您不信任的人创建的,并且这些人可能具有恶意。

票数 90
EN

Stack Overflow用户

发布于 2010-10-27 21:47:08

如果你没有对手,MD5就足够好了。然而,有人可以(故意)创建两个不同的文件,它们散列为相同的值(这称为冲突),这可能是问题,也可能不是问题,这取决于您的实际情况。

由于了解已知的MD5弱点是否适用于给定的上下文是一个微妙的问题,因此建议不要使用MD5。使用防冲突哈希函数(SHA-256或SHA-512)是安全的答案。此外,使用MD5是不好的公关(如果您使用MD5,请准备好为自己辩护;而没有人会质疑您使用的是SHA-256)。

票数 20
EN

Stack Overflow用户

发布于 2011-07-08 03:17:46

md5可能会产生冲突。从理论上讲,尽管可能性很小,但一百万个文件可以产生相同的散列。不要在存储值之前测试您的运气和检查md5冲突。

我个人喜欢创建随机字符串的md5,这减少了散列大文件的开销。当发现冲突时,我使用附加的循环计数器进行迭代和重新散列。

你可以在pigeonhole principle上阅读。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4032209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档