NIST proporciona buenas pautas sobre la longitud de las claves y los hashes para varios algoritmos . Pero no veo nada específicamente sobre la longitud de un nonce aleatorio o pseudo-aleatorio (número utilizado una vez).
Si hay una sola buena respuesta para una variedad de usos, me encantaría ver eso. Pero para concretar esto, usaré la situación común de "restablecimiento de contraseña por correo electrónico", en la que el servidor genera una URL con un componente de ruta pseudoaleatoria. Parece un poco similar a HTTP Digest Authentication, en el que el ejemplo en el RFC parece tener 136 bits (dcd98b7102dd2f0e8b11d0f600bfb0c093).
Observo que muchas personas parecen utilizar los UUID de la versión 4 (que proporcionan 122 bits pseudoaleatorios) o esto, como se explica en ¿Los GUID son seguros para tokens de una sola vez? , aunque el usuario debe tener cuidado con el uso de un UUID anterior mucho más predecible versiones, y ataques locales persistentes desagradables en el generador de números aleatorios de Windows que en su mayoría fueron parchados en 2008.
Pero ignorando el riesgo de enredarse en las versiones e implementaciones de UUID, ¿cuántos bits pseudoaleatorios deben incorporarse en la URL?