如果我使用MD5,例如,两次使用某些数据,是否会增加碰撞的概率?
那么SHA呢?
我问这个是因为我想在客户端中哈希密码,然后再在服务器中哈希。
答案 0 :(得分:4)
您是在谈论保留单散列值和双散列值以及担心它们之间的碰撞吗?如果是这样,那么答案是肯定的,它将使碰撞的概率加倍。然而,这意味着它将从一个微小的值(不能完全记住2 ^ -90 ish)上升到稍微大一点的微小值(2 ^ -89),你不必担心它。
如果你只保留双散列值,那么:不,它们之间的碰撞概率将保持不变。
尽管如此,你应该问自己你想要通过两次散列值来实现什么,因为它几乎肯定没有意义。在this old question中有关于碰撞概率的更多信息。