D.E.S. (Data Encryption Standard) Cifrado Convencional ANTECEDENTES • • • • Horst Feistel (IBM) ¿Cómo usar sustitución monoalfabética y obtener un criptosistema aceptable? – Incorporación de transposición – Cambio de bases númericas que dificultarían el trabajo de un criptoanalista – Características del sistema: • Entrada: 64 bits • Operaciones : transposición, división, reemplazo y combinación • Rápido utilizando computadora, improbable implementarlo manualmente – Nombres del sistema: Dataseal, Demon, Lucifer – Fue vendido al Lloyd´s Bank NSA – Se incorporan las cajas S (cajas de sustitución) – Reducción de la longitud de la clave a 56 bits (para que quepa en un único chip) NIST (1973-1974) – 1975: Es elegido como estándar nacional para el procesamiento de la información – Se registra como D.E.S. (Data Encryption Standard). – Las agencias gubernamentales comienzan a utilizarlo. – Las empresas comienzan a fabricar chips que cifran DES. Aspectos Negativos – Ampliamente criticado por la comunidad científica – Prohibición de exportación criptograf ía 1 Algunos conceptos • Shannon ‘1949 – ¿Cuál es la forma de evitar que un atacante realice análisis estadístico? – Sistema ideal: estadística del texto cifrado debe ser independiente de la clave utilizada – Propone dos métodos : • Difusión: – Se busca que la frecuencia de letras en el texto cifrado sean más parecidas entre sí la relación estadística entre el texto claro y el texto cifrado se complica. – Se logra aplicando repetidamente permutaciones al texto original. – Efecto AVALANCHA. • Confusión: – La relación estadística entre el texto cifrado y la clave es compleja. – Se logra aplicando un algoritmo complejo de sustitución. Estructura de Feistel Selecció Selecci ón de pará parámetros y caracterí características de diseño: diseñ •Tamaño del bloque •Tamaño de la clave •Número de vueltas •Algoritmo para la generación de subclaves •Complejidad de la función F (función de vuelta) •Implementación por software o por hardware Ejemplos de Cifradores basados en Feistel: Blowfish, CAST-128, DES, 3DES, Lucifer, RC2 2 DES Simplificado • DES-S tiene una estructura Feistel de 2 vueltas • Tanto al principio como al final del algoritmo agrega una función de permutación. Esta diferencia también aparece en el DES. • Fue desarrollado por el profesor Edward Shaefer de la Universidad de Santa Clara. • Tiene fines educativos Esquema del DES-S Algoritmo de cifrado: IP-1 o fK2 o SW o f K1 o IP K1 = P8 (Shift (P10 (key))) K2 = P8 (Shift (Shift (P10(key)))) 3 Generación de las subclaves P10 3 5 2 7 4 10 1 9 8 6 P8 6 3 7 4 8 5 10 9 Detalle algoritmo de cifrado IP 2 6 3 1 4 8 5 7 IP-1 4 1 3 5 7 2 8 6 FUNCIONES DEFINIDAS E/P 4 1 2 3 2 3 4 1 P4 2 4 3 1 CAJAS S 0 1 2 3 0 1 2 3 0 1 0 3 2 1 3 2 1 0 0 0 1 2 3 1 2 0 1 3 2 0 2 1 3 3 1 3 3 2 3 0 1 0 2 3 2 1 0 3 4 DES • • • • • • • Estructura: Red de Feistel Tamaño del bloque: 64 bits Longitud de la clave: 56 bits 16 subclaves de 48 bits Cantidad de cajas S: 8 Tamaño de la caja S: 4 x 16 Entrada a la caja S: x 1x 2x 3x 4x 5x 6 x 1x 6: indica fila x 2x 3x 4x 5: indica columna Cantidad de rondas:16 DES – Esquema general 5 DES – Detalle de una ronda DES – Entrada a las cajas S Resultado de E (expansión) …efgh ijkl mnop… …defghi hijklm lmnopq… 6 MODOS de OPERACION • ECB: Electronic Codebook • CBC: Cipher-Block chaining OFB: Output feedback CFB: Cipher feedback Posibles ataques al DES Ataque fuerza bruta – Cantidad posible de claves 256 ˜ 7,21 x 1016 – Utilización de ciclos ociosos de procesadores a través de Internet – Ataque con máquina “Deep Crack” (año 1998) construida con 1856 chips diseñados a medida. Capaz de testear el espacio completo de claves en 5 días. Costo: $ 250.000 Criptoanálisis lineal Ataque teórico introducido por Mitsuru Matsui, EUROCRYPT’93. Requiere 2 43 textos claros conocidos. Criptoanálisis diferencial Presentado por Eli Biham y Adi Shamir, CRYPTO’90. Requiere 2 47 textos claros elegidos. 7 3DES Consiste en encriptar 3 veces con DES. • DES – EEE3: Tres encriptaciones DES con tres claves distintas. • DES – EDE3: Tres operaciones DES con la secuencia cifrardescifrar-cifrar con tres claves distintas. • DES – EEE2 Y DES – EDE2: Igual que las anteriores pero la primera y tercera operación utilizan la misma clave. 8