¿Es práctico romper un pad de bucle de una sola vez? ¿Si es así, cómo?

3

Un pad de una sola vez es conocido como teóricamente seguro, nada puede romperlo. Sin embargo, si se reutiliza la tecla, el teclado de un solo momento se puede romper teóricamente.

Pero incluso RSA es teóricamente rompible, pero se usa ampliamente porque es prácticamente seguro. Entonces, ¿un pad de One-Time con una clave de bucle suficientemente larga es prácticamente seguro?

Si es seguro, ¿cuánto tiempo debe estar la clave para que sea prácticamente irrompible en una PC moderna?

Si es inseguro, ¿por qué? ¿Cómo se lo rompe?

Un ejemplo de una clave OTP en bucle:

LemonLemonLemonLemon ........

    
pregunta Hello World 11.05.2014 - 16:17
fuente

4 respuestas

8

El pad de una sola vez se puede romper trivialmente si la clave se reutiliza de alguna manera.

C1 xor C2 da como resultado P1 xor P2 donde C1 y C2 son las dos partes de texto cifrado cifradas con la misma clave y P1 y P2 son el texto sin formato correspondiente.

A continuación, puede recuperar el texto sin formato con el siguiente método. Toma una palabra o frase común que puede aparecer en el texto sin formato (como "the") y xor que contra el resultado de P1 xor P2 . Si uno de los textos tenía el texto de la cuna ("el" en nuestro ejemplo), entonces el resultado del xor es lo que el otro texto sin formato tenía en esa posición. Si ninguno de los dos textos en claro contiene el texto de la cuna, es muy probable que el resultado del xor sea simplemente incomprensible.

Simplemente continúe con esta técnica hasta que recupere lo suficiente del texto plano para adivinar el resto a partir del contexto. Este ataque se conoce como arrastre de cuna.

    
respondido por el Ayrx 11.05.2014 - 16:25
fuente
2

Una "OTP que se repite" no solo es teóricamente rompible, sino que es trivialmente rompible, romperla es la tarea de la primera lección de un curso de criptografía de collage.

La única razón por la que OTP es irrompible es que la clave no se reutiliza, el cifrado XOR con una clave repetitiva es altamente vulnerable a casi cualquier herramienta de criptoanálisis existente, si sabe algo sobre los datos cifrados, puede obtener una gran cantidad de texto plano útil incluso con solo dos repeticiones, y con cualquier cantidad de datos en el mundo real, prácticamente se garantiza que todos los datos y la clave son fácilmente recuperables.

La OTP es en realidad una mala compensación: mejora la "irrompibilidad" (un área en la que otros sistemas como RSA y AES son muy buenos) a cambio de una gestión de claves muy complicada (un área donde prácticamente no existe ninguna solución utilizable que puede admitir las claves masivas requeridas para OTP), así que OTP mejora algo que ya somos muy buenos a costa de requerir algo que no existe.

    
respondido por el Nir 13.05.2014 - 16:09
fuente
1

Es trivial averiguar la longitud de la clave de bucle usando métodos estadísticos, como contando el índice de coincidencia de los mensajes de texto cifrado. Una vez que se obtiene la longitud de la clave de bucle, un atacante puede simplemente xor una cadena de texto cifrado con otra cadena modificada, la longitud de la clave y el xor resultante es esencialmente texto simple con texto simple. El idioma inglés tiene suficiente redundancia para que un atacante determine algorítmicamente el texto en claro de los dos mensajes desde este punto.

Este ataque es viable para cualquier clave de bucle cuya longitud se conozca. Aumentar el tamaño del bucle no impide que un atacante descubra su longitud, por lo que es fundamentalmente inseguro utilizar claves de bucle.

Puede consultar el Índice de coincidencia para obtener una idea de cómo se puede determinar la longitud de la clave de bucle.

    
respondido por el elemetrics 13.05.2014 - 15:21
fuente
1

Un pad de una vez, si se usa varias veces por repetición o "looping", ya no es un pad de una sola vez. Se convierte en un esquema de encriptación muy débil con una clave larga.

Si insiste en hacer un bucle en estructuras de claves de datos largas, intente hacer un bucle de dos o más, cada uno con una longitud diferente de un número primo grande, cada uno incrementando en paralelo. Eso sería un poco menos trivial de romper.

    
respondido por el Matthew Kern 25.08.2016 - 22:26
fuente

Lea otras preguntas en las etiquetas