Generar un token de uso único en PHP: random_bytes o openssl_random_pseudo_bytes?
Necesito generar un token de un solo uso en PHP. Hay dos funciones disponibles que puedo usar para esto que parecen hacer lo mismo:random_bytes yopenssl_random_pseudo_bytes. Por ejemplo, usandorandom_bytes
:
var_dump(bin2hex(random_bytes(12)));
--> string(24) "338f489ec37a2c2b4943905d"
y usandoopenssl_random_pseudo_bytes
:
var_dump(bin2hex(openssl_random_pseudo_bytes(12)));
--> string(24) "1c7febea20029bd524fba8e7"
openssl_random_pseudo_bytes
es PHP 5.3 y superior (así que supongo que ha estado funcionando por más tiempo), yrandom_bytes
es PHP 7. Estoy usando PHP 7, así que puedo usar cualquiera.
Entonces, ¿hay alguna diferencia mayor (o menor) entre los dos? Si no, estoy tentado a ir conrandom_bytes
simplemente porque tiene un nombre más fácil (= código que es más fácil de leer).