PHP 有一个uniqid()函数,可以生成各种 UUID。
在使用示例中,它显示以下内容:
$token = md5(uniqid());
但在评论中,有人这样说:
从唯一 ID 生成 MD5 是幼稚的,并且会降低唯一 ID 的大部分价值,并在 MD5 域上提供显着(可攻击)的限制。这是一件非常破碎的事情。正确的做法是单独使用唯一ID;它已经为非碰撞做好了准备。
如果是这样,为什么这是真的?如果 MD5 散列(几乎)对于唯一 ID 来说是唯一的,那么 md5'ing uniqid 有什么问题?