输入18个字符可能会发生MD5冲突?

MD5 collision may happen for input of 18 chars?

有没有人证明或测试过固定长度为18字节的数据是否会发生MD5冲突?

即我可以构造两个具有相同 MD5 的数组(18 字节长度)吗?

谢谢!

考虑到 MD5 的长度为 16 字节...是的,18 字节的值保证最终会发生冲突。

但这是错误的问题。哈希根据定义容易发生冲突。它 可能 甚至发生在两个单字节值上。不太可能,但 可能 。如果您使用散列,您 必须预料到 会发生冲突。问题是这对于您的用例是否可以接受,碰撞对您的应用程序有什么影响,您是否可以缓解该问题,以及碰撞发生的可能性

所有这些共同决定了您是否希望在您的情况下使用一般的散列and/or具体选择什么散列。