¿Agregar un hash de una marca de tiempo a una cadena generada aleatoriamente lo hace menos seguro?

1

Tengo el siguiente código para generar tokens de sesión:

binascii.hexlify(os.urandom(16)) + hashlib.md5(str(time.time())).hexdigest()

que convierte los 16 bytes generados aleatoriamente para ser usados en formato hexadecimal y agrega un hash de la marca de tiempo actual.

¿Agregar la marca de tiempo lo hace menos seguro (contra ataques de fuerza bruta) que tener solo los bytes generados aleatoriamente?

    
pregunta Transcendence 13.08.2016 - 02:50
fuente

3 respuestas

1

Agregar la marca de tiempo o incluso alguna cadena constante no hace que la cadena aleatoria anterior sea menos predecible por sí misma. Pero podría ser si el atacante obtiene información lateral como la longitud total de la cadena comprimida porque en este caso la parte menos aleatoria se puede usar para inferir información sobre la parte aleatoria. Vea, por ejemplo, el CRIME y ataques de INGRESO .

    
respondido por el Steffen Ullrich 13.08.2016 - 06:26
fuente
1

Depende de cómo se generó el valor aleatorio.

Eche un vistazo, por ejemplo, a la función CryptGenRandom de Microsoft. Utiliza muchas fuentes para la entropía y una de esas fuentes es la hora actual. Cuando incluye la hora actual, se está quitando esa parte de la entropía.

Hay muchas buenas fuentes de entropía para ese valor aleatorio y la hora actual agrega muy poca entropía de todos modos, pero sí: hizo que el valor aleatorio fuera un poco menos seguro.

    
respondido por el Jeff 13.08.2016 - 10:45
fuente
0

En teoría, todas las cadenas de cookies deben ser aleatorias. El MD5 de la marca de tiempo es técnicamente aleatorio, pero se puede revertir a la marca de tiempo real.

Según la marca de tiempo en la cookie, se puede usar para montar cualquier otro ataque adecuado, por ejemplo, intente romper otros mecanismos débiles.

Esto se debe a que dicho uso no es de ninguna manera estándar (ya que solo se usa de alguna manera en algún software personalizado), por lo tanto, si no hay un uso estandarizado de este, no se debe usar. Y creo que no se puede estandarizar porque no hay razón para hacerlo.

    
respondido por el Aria 13.08.2016 - 16:24
fuente

Lea otras preguntas en las etiquetas