Actualizando un pad de una vez usando el cifrado de un solo time [duplicado]

1

Esta es una pregunta absoluta de noob, ¡así que por favor sea amable conmigo! Veo que se han formulado preguntas similares, ¡pero creo que las mías son diferentes!

Además de desperdiciar espacio de almacenamiento, ¿cuál es la debilidad del siguiente esquema de cifrado simple? Suponga que existen medios verdaderamente aleatorios de una fuente natural, como el fondo cósmico de microondas ...

Use un pad de una vez inicial creado a partir de una fuente verdaderamente aleatoria que tenga al menos el doble de longitud que cualquier mensaje concebible que se pueda enviar. Redacte mensajes con dos partes del mismo tamaño: 1) El mensaje de texto plano. 2) Una actualización de la OTP compuesta de datos verdaderamente aleatorios. Ambas partes cifradas contra la OTP original. Cuando se recibe un mensaje, la primera mitad se descifra contra la OTP para revelar el texto sin formato. Luego, la segunda mitad se descifra para revelar la actualización OTP. Reemplace la OTP inicial con la OTP de actualización.

Me parece que la fuerza de la OTP está preservada, ¿no?

Ninguna parte del OPT se usa dos veces contra el texto sin formato: se reemplaza de inmediato por datos aleatorios. Las partes de la OTP que se reutilizan se utilizan contra datos aleatorios. Suponiendo que la actualización sea realmente aleatoria, esto no podría usarse para deducir la OTP y, por lo tanto, también la actualización, ¿verdad?

Ejemplo de encriptación:

  1. Bob y Alice almacenan la clave inicial 9462367503982349.
  2. Alice cifra su mensaje "FLEE!", "66676" usando parte de la clave 9462367503 y lo envía a Bob.
  3. Alice cambia la parte de su almohadilla utilizada para cifrar "FLEE!" utilizando "66676"
  4. Bob recibe y descifra de nuevo a "FLEE!", "66676".
  5. Bob ha recibido el mensaje que es "FLEE!"
  6. Bob cambia la parte de su almohadilla utilizada para cifrar "FLEE!" utilizando "66676"
  7. Tanto la almohadilla de Alice como la de Bob ahora son 6667667503982349
  8. Bob encripta una respuesta "GRACIAS", "73613451" usando parte del teclado 6667667503982349
  9. Bob cambia su teclado para que lea 7361346103982349
  10. Alicia recibe y descifra de nuevo a "GRACIAS", "73613451"
  11. Alice cambia su teclado para que lea 7361346103982349

En todos los casos, una parte del teclado solo se usa una vez para cifrar un mensaje de texto sin formato y luego recibe una parte de reemplazo. Las partes de la almohadilla se usan varias veces para cifrar datos aleatorios, pero eso no importa porque no revela nada sobre la almohadilla. Si Eve intercepta un mensaje, la parte de texto sin formato se ha cifrado contra una parte del teclado que solo se ha utilizado una vez. Tendría que descifrar el cifrado utilizado en la parte de actualización aleatoria del mensaje para obtener información. El problema para Eve es que no hay pistas porque es un teclado aleatorio que cifra datos aleatorios. Cada vez que Eve intercepta un mensaje, éste se ha cifrado utilizando un teclado modificado.

elemento de lista

    
pregunta DSK 12.12.2016 - 17:48
fuente

1 respuesta

2

Cualquier reutilización de la OTP es fatal. Lo que está proponiendo es efectivamente un "pad doble" que seguramente no tiene las mismas propiedades de seguridad.

Intentando modelar su cifrado en una configuración particular:

  

Dados los colores P i de k bits y una clave inicial K 0 de 2k bits:
K 0 = K 0a K 0b

     

El texto cifrado correspondiente es la concatenación del cifrado de P i y la "actualización OTP" K 1a :
C 0 = C0aC 0b
C 0a = K 0a P 0
C 0b = K 0b K 1a

     

La clave se actualiza a:
K 1 = K1a K 0b

     

En la siguiente ronda tenemos:
C 1 = C1a C 1b
C 1a = K 1a < em> P 1
C 1b = K 0b K2a

     

Tenga en cuenta la reutilización de K 0b . La clave se actualiza a:
K 2 = K2a K 0b

     

En la siguiente ronda tenemos:
C 2 = C2a C 2b
C 2a = K 2a ⊕ < em> P 2
C 2b = K 0b K3a

     

Ahora podemos recuperar:

     

(C 0b C 1b ) ⊕ C 1a
  = ( K 0b K 1a ) ⊕ ( K 0b K 2a ) ⊕ ( K 1a ⊕ P 1 )
  = ( K 1a K 2a ) ⊕ ( K 1a ⊕ P 1 )
  = K 2a ⊕ P 1

Su cifrado ya falla un ataque de texto plano elegido. Como puede ver más arriba, puede recuperar la clave de descifrado K 2a si conoce P 1 . Esto le permite recuperar P 2 .

Esto muestra por qué tu cifrado está roto.

    
respondido por el Lekensteyn 12.12.2016 - 22:07
fuente

Lea otras preguntas en las etiquetas