将md5哈希截断为20个字符?

时间:2016-12-12 20:33:21

标签: hash md5

如果md5hash电子邮件地址并将哈希截断为20个字符,是否可以计算它的唯一性? 截断开头或结尾是否重要? 它将在AD中用作samaccountname。

2 个答案:

答案 0 :(得分:1)

可能的唯一结果数将从2^128(32个字符* 4位)减少到2^80(20个字符* 4位)。

在任何点(开始,中间或结束)截断结果都不会影响熵,只会增加碰撞的可能性。在2^80种可能性,您不应该有任何问题。

答案 1 :(得分:0)

发生碰撞会发生什么?您可能可以安全地假设攻击者可以创建两个在MD5下散列到相同值的电子邮件地址。

如果这是一个问题,您可能需要考虑一个替代方案(如HMAC),这对于创建冲突要困难得多,尤其是在不了解HMAC密钥的情况下。