¿Se conocen claves AES-CBC o combinaciones de teclas IV intrínsecamente inseguras por los valores aleatorios generados correctamente?

7

Esto es principalmente una pregunta teórica.

Estoy utilizando AES128 CBC para cifrar archivos pequeños. Tanto mis claves como mis IV se generan aleatoriamente por archivo utilizando la generación segura de valores aleatorios de iOS (SecRandomCopyBytes).

1) En teoría, ¿necesito comprobar si hay alguna combinación de teclas, IV o IV intrínsecamente inseguras (por ejemplo, aunque sea totalmente improbable, si la Clave y la IV terminan siendo todos ceros, es igual de seguro Suponiendo que un atacante no sabe esto)?

2) ¿Puedo confiar en el generador de valores aleatorios de Apple para esto?

    
pregunta Water Not Words 03.03.2016 - 04:31
fuente

2 respuestas

1

Se espera que un CSPRNG devuelva todos los valores posibles del espacio de la imagen con una probabilidad indistinguible de una distribución aleatoria.

Dejar ciertos resultados sería un mal diseño. Piensa en dados. Si tira 1-1-1, no pensaría que esto no es lo suficientemente aleatorio y lo solucionó: acaba de generar esa entropía con la certeza de que es real.

Hacerlo con un PRNG comprometería su seguridad, así que no, no hay nada filtrado , con suerte.

Nota al margen aquí: incluso si la probabilidad es muy pequeña (tan pequeña como para ser insignificante): se supone que no debe reutilizar el mismo IV en la misma clave con AES-CBC, para no filtrar nada si sus archivos comparten informacion estructural

Aparte de eso, deberías estar bien con tu enfoque. Cada llamada a SecRandomCopyBytes puede considerar una tirada de dados, por lo que a usted le importa, ya que es la mejor entropía que obtendrá.

Si su objetivo no es solo la confidencialidad, sino también la integridad de los datos, sería mejor utilizar otro modo de operación como se señala en los comentarios. Sé que, sin embargo, iOS no es muy generoso al dar muchas opciones allí.

    
respondido por el Tobi Nary 02.04.2016 - 12:57
fuente
0
  

Estoy utilizando AES128 CBC para cifrar archivos pequeños. Tanto mis claves como mis IV se generan aleatoriamente por archivo utilizando la generación segura de valores aleatorios de iOS (SecRandomCopyBytes). ¿Debo comprobar si hay alguna combinación de claves, IV o IV con claves inseguras (por ejemplo, ceros, etc.)?

Hasta ahora, no creo que puedas hacer nada al respecto.

En primer lugar, la generación segura de valores aleatorios de iOS no debería estar tan rota como para generar todos los ceros como le preocupa. Incluso si un generador de números aleatorios se hace predecible, su salida puede parecer bastante aleatoria a menos que sepa el truco.

En segundo lugar, no he escuchado ninguna clave débil sobre AES. Y si no se conocen teclas débiles (o combinaciones de teclas IV), no hay maneras de verificarlas.

  

¿Puedo confiar en el generador de valores aleatorios de Apple para esto?

Creo que estaría bien ya que AES usa una clave de 128 bits. Pero si sus archivos son realmente importantes, puede usar múltiples RNG independientes y X o sus salidas como las Claves y las Iv.
Consulte wikipedia :
"Las salidas de múltiples RNG independientes se pueden combinar (por ejemplo, usando una operación XOR a nivel de bits) para proporcionar un RNG combinado al menos tan bueno como el mejor RNG utilizado. "

    
respondido por el Leo.W 03.03.2016 - 10:35
fuente

Lea otras preguntas en las etiquetas