¿Por qué el algoritmo DES de dos teclas proporciona solo seguridad de 80 bits?

1

En el enlace wiki, se menciona que debido a los ataques de "texto simple elegido" o "cifrado conocido", dos DES clave solo proporcionan 80 bits de seguridad.

Mi pregunta es cómo funcionan estos ataques y cómo surgió NSIT con 2 < 80 > bits de seguridad

    
pregunta Rohit Jindal 10.09.2013 - 19:04
fuente

2 respuestas

4

Para comprender lo que sucede con Double-DES, considere el ataque de encuentro en el medio (no relacionado con " ataques de hombre en el medio ").

Configuración: hay doble DES, donde un bloque de datos se cifra con la clave K1 , luego nuevamente con K 2 . El atacante podría tener acceso a dos bloques de texto simple / texto cifrado: el atacante sabe A , B , C = E K 2 (EK1 (A)) y D = E K 2 (E K 1 (B)) .

Luego el atacante puede calcular todos los E K (A) para todos los valores de K (hay 2 56 de ellos). Luego también puede calcular todos los D K ' (C) para todos los valores de K' (de nuevo, 2 56 claves para probar). En ese momento, tendrá aproximadamente 2 48 candidatos para el par (K 1 , K 2 ) : estos son todos los pares (K, K ') para los cuales E K (A) = D K' (C) . El "2 48 " proviene del hecho de que estamos cifrando bloques de 64 bits, por lo que aproximadamente 1 valor de bloque cada 256 es uno de los E K (A ) valores, por lo que aproximadamente 1 valor K ' cada 256 producirá un D K' (C) .

Los 2 candidatos 48 se pueden probar con el texto simple B y el texto cifrado D ; se espera que solo la correcta pase esa prueba.

Costo: 2 57 invocaciones de DES (más un promedio adicional de 2 48 para la verificación de candidatos, pero eso es insignificante), y algún almacenamiento de memoria capaz de contener 2 56 valores intermedios, y ordenados. Dado que los valores están ordenados, cada uno diferirá de los anteriores en solo 8 bits en promedio, pero también debe almacenar el correspondiente K , así que digamos que una implementación práctica usaría 10 bytes por valor. Eso es entonces 10 * 2 56 bytes de almacenamiento, que es bastante grande (unos 650 miles de terabytes ) pero se puede visualizar con la tecnología existente (aunque no sería barato) ). El paso de clasificación sería el mayor costo en una forma "académica" (aproximadamente 2 64 comparaciones) pero las 2 57 DES invocaciones aún serían, en la práctica, más caras.

No veo ningún "80 bits" aquí. De hecho, la seguridad de Double-DES debe considerarse cercana a "57 bits" . Los requisitos de almacenamiento hacen que sea más difícil de romper que un simple "cifrado de bloque de 57 bits", pero en ningún caso es tan difícil como un cifrado de bloque de 80 bits.

(Un método similar funciona para 3DES, lo que significa que 3DES tiene seguridad "alrededor de 112 bits" a pesar de sus 168 bits de clave.)

    
respondido por el Thomas Pornin 10.09.2013 - 19:33
fuente
0

La cosa con seguridad de 80 bits no se aplica a Double-DES sino a una opción de 3DES.

Si usas 3DES con tres claves diferentes, obtienes 112 bits (¡y no 168!) de seguridad debido al ataque en el medio que Thomas Pornin mencionó en su respuesta.

Si usas 3DES con k_1 = k_3 y pones algunas suposiciones, terminarás con 80 bits.

Wikipedia se refiere a este pdf por NIST para: enlace

    
respondido por el HorstKevin 01.07.2015 - 15:43
fuente

Lea otras preguntas en las etiquetas