¿Qué significan los datos de texto de cifrado idénticos en el modo de encadenamiento de bloques de cifrado (CBC)?

4

Estoy tratando de entender las opciones de la siguiente pregunta

Según mi entendimiento, ninguna de las opciones se aplica porque el texto sin formato para el primer bloque resaltado es 1F2..CA2, que es la entrada del segundo bloque resaltado. De manera similar, para el segundo bloque resaltado, su entrada de texto sin formato es 60A4..388 que se ingresa al primer bloque resaltado. Corríjame si me equivoco y la opción que realmente se aplica aquí.

    
pregunta tulamba 24.04.2018 - 19:05
fuente

2 respuestas

2

Creo que ninguna de las respuestas es correcta. Al ser los bloques iguales, los XOR de los bloques anteriores y los colores planos son los mismos. Entonces 60A..388 XOR cleartext-1 es lo mismo que 1F2..CA2 XOR cleartext-2 .

Entonces cleartext-1 XOR cleartext-2 = 7f8d68bf68fb3f .

Explicación:

  1. Los datos de texto claro no pueden ser nulos porque su XOR no es nulo
  2. Los fragmentos anteriores (texto cifrado) claramente no son idénticos e incluso si lo fueran, no importaría a menos que los textos claros también fueran idénticos.
  3. No son idénticos (texto claro), pero para mí el motivo de la compensación no está claro. No es asi. Además, no necesariamente diría que no hay relación, ya que escribí la relación abajo (lo que equivale a si son XOR-ed)
  4. No, no pueden ser idénticos. Los bloques idénticos serían XOR a todos los ceros / nulos.

Entonces, el "más correcto" es el tercero, pero en mi humilde opinión sigue siendo incorrecto.

    
respondido por el Peter Harmann 24.04.2018 - 21:38
fuente
2

Aunque Peter Harmann hace muy buenos puntos en su respuesta y explica todo perfectamente, creo que el único correcto la respuesta puede ser # 4.

Antes del cifrado de bloques , solo puede obtener bloques de texto cifrado idénticos si la entrada del cifrado de bloque es idéntica en ambas operaciones de cifrado en modo CBC. Los cifrados de bloque son permutaciones, por lo que siempre hay una relación 1: 1 entre un bloque de texto simple específico y un bloque de texto cifrado específico.

El problema es que la pregunta no hace que sea explícita que la pregunta es sobre el cifrado de bloque en lugar del cifrado de bloque en modo CBC . El bloque de texto cifrado directamente antes , el cifrado del bloque es XOR'ed con el bloque de texto simple antes de que se realice el cifrado del bloque. Por lo tanto, la calidad de la pregunta es ciertamente discutible.

Para asegurarse de que no se encuentren bloques de texto cifrado idénticos, debe haber un número máximo de bloques que puedan ser cifrados por el modo CBC. Ese máximo está relacionado con el tamaño de bloque del cifrado de bloque que se está utilizando. Esta es una de las razones por las cuales AES (tamaño de bloque de 128 bits) debería preferirse al modo triple DES o pez globo (tamaño de bloque de 64 bits).

Si se encuentra un bloque idéntico, entonces se filtra el XOR entre los dos bloques de texto plano, y se puede abusar de la filtración de cualquier tipo de datos y se rompe un cifrado.

Es posible que haya un movimiento (final) a cifrados de bloque de 256 bits en el futuro debido a problemas como este. Los modos de operación comunes / modernos, como CTR (modo de contador) y GCM, tienen limitaciones en la cantidad de bytes de mensajes y la cantidad de mensajes que se pueden cifrar con una sola clave, a pesar de operar en un tamaño de bloque de 128 bits.

    
respondido por el Maarten Bodewes 25.04.2018 - 18:24
fuente

Lea otras preguntas en las etiquetas