什么时候哈希碰撞?

use*_*241 9 algorithm hash

据我所知,根据鸽子原则,如果物品数量大于容器数量,那么至少一个容器将有多个物品.这个容器是否重要?这如何适用于MD5,SHA1,SHA2哈希?

Blu*_*eft 15

不管它是哪个容器并不重要,事实上这对加密哈希来说并不重要; 很多更重要的是生日悖论,它说,你只需要哈希sqrt(numberNeededByPigeonHolePrincipal)值,平均而言,找到一个碰撞之前.

因此,散列需要足够大以使搜索空间的平方根太大而不能暴力.SHA1的平方根搜索空间是2 80,截至2012年3月,使用相同的SHA1-hash没有找到两个值(尽管我预测这将在未来一两年内发生.. ); 与SHA2相同,SHA2是一系列具有更大搜索空间的哈希.MD5已经被打破了一段时间.