我需要检查一张图片是否已经包含在一大堆图片中(超过200万张图片)。因此,我使用md5作为哈希函数实现了持久性哈希列表。后来,我读过md5有一些问题,并且开发了更好的功能。你认为我的目的有更好的功能吗?
答案 0 :(得分:2)
不要将MD5用于安全性很重要的任何事情。 MD5 is broken。
对于简单的重复检测,您应该没问题。 (你的场景中没有攻击者)
如果您的代码有可能在需要安全性的环境中使用,请使用安全替代方案。 SHA-265 是一个很好的候选人。 Git uses SHA-1但您应该not use it for new applications
快速非加密哈希函数是MurmurHash。如果您需要最高性能,请使用此选项。