¿Cómo puede cambiar el texto plano del mensaje secreto dado que está en AES-256 CBC?

3

Supongamos que tiene el mensaje secreto cifrado con AES-256 en modo CBC

5a04ec902686fb05a6b7a338b6e07760 14c4e6965fc2ed2cd358754494aceffa

donde el primer 16 bytes es el vector inicial, el segundo 16 bytes es el texto cifrado. El texto simple del mensaje secreto anterior es (codificado en ASCII) We're blown. Run

Ahora, mi pregunta, ¿cómo puede cambiar el mensaje secreto para que obtenga el texto sin formato Meeting tonight! si lo descifra?

He intentado encontrar algunos ejemplos en Internet, pero no pude encontrar ninguno: /

Sin embargo, podría encontrar un modelo que describa cómo funciona el descifrado CBC:

Nuestro texto sin formato We're blown. Run se compone de 16 caracteres, lo que significa que solo tenemos un bloque de texto sin formato. Desde el modelo, también vemos que el texto cifrado está descifrado y XOR'd de tal manera que crea el texto cifrado. Como parece, hay cambios requeridos en el vector inicial, por lo que recibimos el mensaje deseado Meeting tonight! . Pero, ¿cómo se hace esto exactamente?

    
pregunta roblind 01.06.2018 - 01:03
fuente

1 respuesta

5

Usted conoce el IV y el texto plano, así como la salida de cifrado sin procesar (antes de que se aplique el IV). Eso es todo lo que importa. Puedes ignorar todo lo demás. Lo único que puedes controlar es el texto cifrado y el IV. Entonces, ¿cómo cambias el IV para cambiar de manera predecible el texto simple?

Sugerencia: si tienes A ⊕ B = C, y conoces B y C (y, por lo tanto, puedes calcular A), ¿qué haces con A, sobre el que tienes control total, para cambiar C de manera predecible? Aquí A es el texto sin formato antes de que se aplique el IV, B es el IV y C es el texto sin formato que desea cambiar. Tenga en cuenta que, si estuviera haciendo esto con cualquier otro bloque, el IV se reemplazaría con el texto cifrado del bloque anterior.

    
respondido por el forest 01.06.2018 - 01:53
fuente

Lea otras preguntas en las etiquetas