¿Almohadillas infinitas de una vez, fuerza bruta almohadillas múltiples?

4

Basado en mi entendimiento, usando la misma clave para cifrar Dos textos sin formato completamente aleatorios al usar un cifrado otp seguirán siendo perfectamente secretos. Esto se basa en las respuestas en este pregunta .

Las respuestas a esas preguntas también dicen que usar esos datos no podría ser utilizado para cifrar más mensajes. Mi entendimiento es que si los mensajes se han transmitido de forma segura usando Cifrado de pad 2 veces. Esto debería ser igual a entregarlos en una ubicación física.

Lo que me pregunto es ¿por qué no poder enviar nuevos blocs de una vez? Si el mensaje es perfectamente seguro, un enemigo no podría determinar cuales son los secretos ¿Cómo utilizarías la fuerza bruta para descifrar los mensajes, ya que guardan un secreto perfecto?

    
pregunta 5hammer 08.01.2016 - 21:56
fuente

1 respuesta

5

En pocas palabras, es exactamente lo mismo que una almohadilla dos veces con un paso adicional.

Entonces, como saben, el problema con la reutilización de una sola vez es que pierde información.

Si ciframos m1 y m 2 con pad1 , eso nos da:

m1 xor pad 1 = c1 y m2 xor pad1 = c2

Entonces, si capturamos c1 y c 2 , entonces podemos:

c1 xor c 2 para obtener m1 xor m 2

Sin embargo, si reutilizamos pad1 para transmitir pad 2 , y luego use pad2 para cifrar m 2 , obtenemos lo siguiente:

  • m1 xor pad1 = c1
  • pad2 xor pad1 = c2
  • m2 xor pad2 = c3

Así que ahora, siempre que capture c1 , c 2 , y c3 , puedo hacer lo siguiente:

c1 xor c 2 = m1 xor pad 2

Lo que efectivamente me da el texto cifrado que tendría si hubiera usado pad2 en m 1 directamente. Así que ahora tengo efectivamente los textos cifrados para:

m1 xor pad 2 y m2 xor pad 2

Que cuando xor'ed luego me da:

m1 xor m 2

Voila.

    
respondido por el Xander 08.01.2016 - 22:22
fuente

Lea otras preguntas en las etiquetas