有没有可能使用md5生成相同的哈希键?

时间:2012-04-26 07:40:58

标签: md5 unique-key api-key

使用此功能生成独特的api keies并存储到数据库中。

strtoupper( md5( uniqid(rand(), TRUE ) ) );

是通过上面的函数???

生成相同散列键的任何可能性

2 个答案:

答案 0 :(得分:2)

uniqid基于以毫秒为单位的时间,将其与随机前缀相结合,并且极不可能。

有关uniqid的更多信息,请参阅下文: PHP: uniqid - Manual

答案 1 :(得分:1)

即使uniqueid函数生成的唯一值非常独特,但在使用MD5哈希算法时存在相当大的冲突概率(即,不同的值将导致相同的哈希值)。事实上,US-CERT认为MD5“加密破坏且不适合进一步使用”,如果您担心碰撞,则应考虑使用SHA256 / SHA512算法。