SHA256 para IV para AES-256 CBC?

1

Al crear un IV para el modo AES-256 CBC, el IV debe ser aleatorio y no debe poder ser adivinado.

Si tuviera que usar la función rand() en C, sembrado con time(NULL) para generar números aleatorios sim que luego se pondrían a través de sha256, sería un IV seguro o sería vulnerable como la semilla el tiempo?

Tengo la impresión de que la IV solo está allí, de modo que la misma información cifrada dos veces con la misma clave saldría diferente debido a la IV.

    
pregunta dangee1705 20.07.2017 - 11:03
fuente

1 respuesta

3

Dado que rand() es solo una función pseudoaleatoria y, por lo tanto, un poco predecible y que time() es en realidad muy predecible (es decir, solo unos pocos valores dentro de un marco de tiempo específico) y que la previsibilidad de la salida de SHA -256 es lo mismo que la previsibilidad de su entrada. Debería estar claro que, en esencia, el resultado es tan predecible como el rand() original, siempre que el atacante sepa cómo se construyó tu semilla.

    
respondido por el Steffen Ullrich 20.07.2017 - 11:23
fuente

Lea otras preguntas en las etiquetas