PHP tiene una función uniqid() que genera un tipo de UUID.¿Por qué es MD5'ing un UUID no es una buena idea?
En los ejemplos de uso, se muestra lo siguiente:
$token = md5(uniqid());
Pero en los comentarios, someone says this:
Generación de un MD5 de un identificador único es ingenua y reduce gran parte de el valor de ID únicos, así como proporcionar estenosis significativa (atacable) en el dominio MD5. Eso es una cosa rota profundamente que hacer. El enfoque correcto es usar el ID único en ; ya está orientado para sin colisión.
¿Por qué es esto cierto, si es así? Si un hash MD5 es (casi) único para una identificación única, entonces ¿qué hay de malo en md5'ing un uniqid?
De hecho, es peor, porque los UUID son únicos, mientras que los hashes MD5 de los UUID no lo son. –