¿Es seguro UUID v4 criptográficamente para las contraseñas? [duplicar]

0

En términos de tener suficiente entropía para la aleatoriedad, ¿podemos considerar que UUID v4 es seguro?

Por ejemplo, generando una contraseña aleatoria como

>>> import uuid
>>> uuid.uuid4().hex

eso sería suficiente?

Leí que era una entropía de 3.4e38, lo que parece razonable, pero mi preocupación es más sobre si es potencialmente adivinable (por ejemplo, UUID v1 pierde la dirección MAC, y otras fuentes como / dev / random no pueden ser del todo seguro).

    
pregunta Mariano Anaya 25.07.2017 - 16:11
fuente

1 respuesta

2

UUID4 no depende de la dirección MAC de la máquina, desde la documentación :

  

Si todo lo que desea es una ID única, probablemente debería llamar a uuid1 () o   uuid4 (). Tenga en cuenta que uuid1 () puede comprometer la privacidad, ya que crea un UUID > que contiene la dirección de red de la computadora. uuid4 () crea un UUID aleatorio.

Sin embargo, los UUID de cualquier tipo no prometen ser criptográficamente seguros ya que no están garantizados en el RFC . Ciertas implementaciones pueden usar un generador de números aleatorios criptográficamente seguro, pero no me gustaría confiar en él. Elegiría usar otra biblioteca si eso es lo que se necesita. Si está usando Python3, puede usar la biblioteca secrets que tiene funciones para hacer solo esto.

    
respondido por el Casey 25.07.2017 - 16:49
fuente

Lea otras preguntas en las etiquetas