md5算法发生冲突的概率是多少?我相信它非常低。
答案 0 :(得分:30)
如果您不尝试故意创建冲突,则需要散列大约2 ^ 64个值以在它们之间进行单个冲突。散列碰撞与Birthday problem非常相似。
如果你看两个任意值,碰撞概率只有2 -128 。
md5的问题在于,制作两个散列为相同值的不同文本相对容易。但这需要蓄意攻击,并且不会意外发生。即使是故意的攻击,目前也无法获得与给定哈希匹配的纯文本。
简而言之,md5对于非安全目的是安全的,但在许多安全应用程序中都被破坏了。
答案 1 :(得分:5)
它生成一个128位的值。因此,意外冲突率应为2 -64 (因为生日悖论)。