DES
|
Data Encryption Standard (DES). Es un estándar de cifrado, es decir, un algoritmo o método para encriptar datos o información, desarrollado originalmente por IBM a solicitud del NBS (del inglés Nacional Bureau of Standard, Oficina Nacional de Estandarización, en la actualidad llamado NIST, del inglés Nacional Institute of Standards and Technology, Instituto Nacional de Estandarización y Tecnología) de Estados Unidos y posteriormente modificado y adoptado por el gobierno de ese mismo país en 1977 como estándar de cifrado de todas las informaciones sensibles no clasificadas.
Este estándar de cifrado es utilizando ampliamente en todo el mundo, a pesar de las discrepancias que existen en cuanto a su uso, por algunos criterios referentes a la corta longitud de su clave, y sospechas de alguna puerta trasera o back door. Este algoritmo es también conocido como DEA (Data Encryption Algorithm) y en los últimos años ha sido sustituido por AES (Advanced Encryption Standard, Estándar de Cifrado Avanzado).
Sumario
Historia
El 15 de mayo de 1973, el NBS hoy en día denominada NIST, hizo un llamamiento en el Federal Register para la creación de un algoritmo de cifrado que cumpliera con los siguientes requisitos:
- Ofrecer un alto nivel de seguridad relacionado con una pequeña clave utilizada para cifrado y descifrado.
- Ser comprensible.
- No depender de la confidencialidad del algoritmo.
- Ser adaptable y económico.
- Ser eficaz y exportable.
El 27 de agosto de 1974, IBM propuso "Lucifer", un algoritmo desarrollado entre 1973 y 1974, y desarrollado por Horst Feistel, que gracias a la NSA (National Security Agency, Agencia Nacional de Seguridad) fue modificado el 23 de noviembre de 1976, convirtiéndose en DES. El DES fue aprobado por el NBS en 1978. El DES fue estandarizado por el ANSI (American National Standard Institute, Instituto Nacional Americano de Normalización) bajo el nombre de ANSI X3.92, más conocido como DEA (Data Encrytion Algorithm, Algoritmo de Cifrado de Datos).
El equipo de IBM dedicado al diseño y análisis de este algoritmo estaba integrado por Feistel, Walter Tuchman, Don Coppersmith, Alan Conheim, Carl Meyer, Mike Matyas, Roy Adler, Edna Grossman, Bill Notz, Lynn Smith, y Bryant Tuckerman.
En 1980, el NIST estandarizó los diferentes modos de operación del algoritmo. Trabajaba sobre bloques de 128 bits, teniendo la clave igual longitud. Se basaba en operaciones lógicas booleanas y podía ser implementado fácilmente, tanto en software como en hardware.
Principio de funcionamiento de DES
Se trata de un sistema de cifrado simétrico por bloques de 64 bits, de los que 8 bits (un byte) se utilizan como control de paridad (para la verificación de la integridad de la clave). Cada uno de los bits de la clave de paridad (1 cada 8 bits) se utiliza para controlar uno de los bytes de la clave por paridad impar, es decir, que cada uno de los bits de paridad se ajusta para que tenga un número impar de "1" dentro del byte al que pertenece. Por lo tanto, la clave tiene una longitud "útil" de 56 bits, es decir, realmente sólo se utilizan 56 bits en el algoritmo.
El algoritmo se encarga de realizar combinaciones, sustituciones y permutaciones entre el texto a cifrar y la clave, asegurándose al mismo tiempo de que las operaciones puedan realizarse en ambas direcciones (para el descifrado). La combinación entre sustituciones y permutaciones se llama cifrado del producto.
La clave es codificada en 64 bits y se compone de 16 bloques de 4 bits, generalmente anotadas de k1 a k16. Dado que "solamente" 56 bits sirven para el cifrado, pudiendo haber hasta 256 (o 7.2*1016) claves diferentes.
El algoritmo como estándar
DES fue aprobado como estándar en noviembre de 1976 y publicado el 15 de enero de 1977, solamente autorizado para el uso no clasificado de datos. En 1983 fue confirmado como estándar, y además en los años 1988, 1993 y 1998, este último año definiendo TripleDES. En el año 2002, DES fue reemplazado por el estándar de cifrado avanzado AES, aunque hasta el día de hoy, DES continúa siendo utilizando ampliamente a nivel mundial.
TripleDES
En 1990, Eli Biham y Adi Shamir desarrollaron el criptoanálisis diferencial, que buscaba pares de textos planos y pares de textos cifrados. Este método funciona con un máximo de 15 rondas. Por otro lado, aunque una clave de 56 bits ofrece una enorme cantidad de posibilidades, muchos procesadores pueden calcular más de 106 claves por segundo. Debido a esto, cuando se utilizan al mismo tiempo una gran cantidad de máquinas, es posible que un gran organismo encuentre la clave correcta. Una solución a corto plazo requiere que se encadenen tres cifrados DES mediante dos claves de 56 bits (esto equivale a una clave de 112 bits). Este proceso se llama TripleDES, denominado TDES (algunas veces 3DES o 3-DES). El TDES permite aumentar de manera significativa la seguridad del DES, pero posee la desventaja de requerir más recursos para el cifrado y descifrado. Por lo general, se reconocen diversos tipos de cifrado triple DES:
- DES-EEE3: Cifrado triple DES con 3 claves diferentes.
- DES-EDE3: una clave diferente para cada una de las operaciones de triple DES (cifrado, descifrado, cifrado).
- DES-EEE2 y DES-EDE2: una clave diferente para la segunda operación (descifrado).
El sistema de cifrado DES se actualizaba cada 5 años. En el año 2000, durante su última revisión y después de un proceso de evaluación que duró 3 años, el NIST seleccionó como nuevo estándar un algoritmo diseñado conjuntamente por dos candidatos belgas, el Sr. Vincent Rijmen y el Sr. Joan Daemen. El nuevo algoritmo, llamado por sus inventores RIJNDAEL es el algoritmo llamado a reemplazar, de ahora en adelante, al DES.
Fuentes
- Internet Security. Cryptographic Principles, Algorithms and Protocols. Autor: Prof. Man Young Rhee, Universidad Nacional de Seúl, República de Korea.