El punto central del cifrado simétrico es que si un atacante no tiene la clave, no puede descifrar los datos. AES no tiene ataques de cómputo factibles conocidos públicamente ( significativamente mejor que forzar brutalmente todo el espacio clave 2 128 ) que sean relevantes para este escenario.
Si los datos están en reposo, no hay un ataque de texto simple elegido, no hay ningún sistema que acepte el texto simple elegido y lo cifre. Solo puede realizar el ataque de texto sin formato elegido si un atacante puede enviar textos aleatorios a un sistema que los cifrará y devolverá el texto cifrado.
Ahora, si expandió la superficie de ataque a una en la que un atacante pueda solicitar que un texto simple se cifre con una clave desconocida, entonces hay un posible ataque de texto simple elegido si el IV reutiliza o conoce el atacante antes de enviar su texto simple.
Con la superficie de ataque expandida, si el atacante conocía el IV (<) o antes de enviar el texto sin formato, y (2) un atacante podría convencer a su sistema (que tiene la clave) para cifrar el texto arbitrario enviado por ellos, y (3) el espacio de mensajes para cada bloque es bastante pequeño (solo digamos unos pocos miles / millones de posibilidades que es significativamente más pequeño que las 2 opciones completas 128 permitidas con 16 bytes arbitrarios) para cada bloque de 16 bytes de texto sin formato), entonces el atacante sí podría enviar de manera eficiente texto simple arbitrario con el mismo IV fijo (o dar cuenta del cambio) IV al hacer su adivinación de texto sin formato) hasta que encuentren una coincidencia con cada bloque del texto cifrado que desean descifrar. Podrían hacer este bloque por bloque (un bloque AES es de 128 bits = 16 bytes) para adivinar secuencialmente el texto sin formato original por fuerza bruta (del espacio de mensaje pequeño).
Sin embargo, con un IV de 128 bits aleatorio no conocido de antemano, este ataque no funcionará. ¿Por qué? Porque en el modo CBC c[0] = E(k, p[0] XOR IV)
, c[i] = E(k, p[i] XOR c[i-1])
para i > 0 y la IV cambian cada vez (y se desconoce cuando envía el texto sin formato, por lo que no puede explicar el cambio en IV y su cambio en su estimación de p [0]).
¿Cómo protege los datos en este caso?
Los datos ya están protegidos.