IDEA: Algoritmo de Cifrado de Datos — definición, funcionamiento y seguridad
IDEA: descubre qué es, cómo funciona su cifrado de 64 bits y clave de 128, sus rondas, seguridad y uso en PGP. Explicación clara y análisis de su resistencia criptográfica.
Definición y origen
En criptografía, el Algoritmo Internacional de Cifrado de Datos (IDEA) es un cifrado por bloques diseñado por Xuejia Lai y James Massey de ETH Zurich en 1991. Pretendía ser un sustituto del Estándar de Cifrado de Datos. IDEA se parece mucho a un cifrado anterior llamado Proposed Encryption Standard (PES), pero con algunas mejoras. Por ello, IDEA se llamó primero IPES (Improved PES).
Patentes y licencias
El cifrado estuvo patentado en varios países y su nombre era además una marca comercial. En la práctica, estas patentes limitaron inicialmente su uso comercial; IDEA contó con una licencia mundial gestionada por la empresa MediaCrypt. Las patentes expiraron alrededor de 2010-2012, por lo que hoy en día ya no suponen una restricción en la mayoría de jurisdicciones (aunque la marca puede seguir vigente en algunos territorios).
Usos históricos y actuales
IDEA se utilizó en la versión 2.0 de Pretty Good Privacy (PGP) después de que se descubriera que el cifrado empleado en la versión 1.0, BassOmatic, era inseguro. IDEA puede emplearse con el estándar OpenPGP, y durante años fue una opción popular para cifrado de correo y archivos. Con la llegada de nuevos algoritmos y la disponibilidad de AES, su uso ha disminuido en implementaciones modernas.
Características técnicas y funcionamiento
IDEA opera con bloques de 64 bits y utiliza una clave de 128 bits. Realiza ocho rondas idénticas y una transformación de salida (a menudo llamada media ronda), lo que da un total de 8,5 rondas. Los procesos de cifrado y descifrado son similares, con subclaves derivadas de la clave maestra.
IDEA basa su seguridad en la combinación de operaciones de diferentes grupos algebraicos —suma modular, multiplicación modular y la operación bit a bit XOR— elegidas para ser "algebraicamente incompatibles". Específicamente:
- Operaciones de suma módulo 216 (65536) para dos de los flujos,
- Operaciones de multiplicación módulo 216+1 (65537) para otros dos flujos, con la convención de representar el cero multiplicativo como 65536,
- Operaciones XOR a nivel de bits para mezclar resultados.
Cada una de las ocho rondas utiliza seis subclaves de 16 bits y la media ronda final utiliza cuatro, sumando 52 subclaves en total. Las primeras ocho subclaves se extraen directamente de la clave de 128 bits (K1 son los 16 bits menos significativos y K8 los 16 más significativos). Los siguientes grupos de ocho subclaves se obtienen rotando la clave maestra a la izquierda 25 bits tras generar cada grupo; tras seis rotaciones se generan todas las subclaves necesarias.
Descripción general de una ronda
De forma simplificada, cada ronda actúa sobre el bloque dividido en cuatro palabras de 16 bits X1, X2, X3 y X4:
- Primero se aplican operaciones no lineales: multiplicación modular a X1 y X4 (módulo 65537) y suma modular a X2 y X3 (módulo 65536) usando las cuatro primeras subclaves de la ronda.
- Se combinan con XOR para producir dos valores intermedios que pasan por una pequeña estructura tipo Feistel interna usando las dos subclaves siguientes de la ronda (K5 y K6), produciendo dos «tallas» (t-values) que vuelven a combinarse con las palabras originales mediante XOR.
- Finalmente se realiza un intercambio (swap) de las dos palabras del medio antes de la siguiente ronda (salvo en la media ronda final).
La media ronda final (transformación de salida) usa las cuatro subclaves restantes para aplicar dos multiplicaciones mod 65537 y dos sumas mod 65536 produciendo el bloque cifrado final.
Seguridad y criptoanálisis
IDEA fue diseñado para resistir ataques diferenciales y lineales mezclando operaciones de diferentes tipos algebraicos. Los autores analizaron su resistencia frente al criptoanálisis diferencial y concluyeron que, bajo ciertos supuestos, era robusto. Desde su publicación se han propuesto varios avances criptoanalíticos:
- No se han reportado ataques prácticos que rompan IDEA completo (8,5 rondas) para todas las claves en tiempos factibles.
- Existen ataques teóricos más eficaces que el forcejeo para versiones reducidas del cifrado; por ejemplo, se han roto variantes reducidas a 6 rondas con complejidades menores que la búsqueda exhaustiva. A partir de 2007, el mejor ataque conocido que afecta a todas las claves alcanza hasta 6 rondas.
- Se han identificado algunas clases de claves débiles (Daemen et al., 1994), pero son tan raras que pueden evitarse explícitamente en aplicaciones que lo requieran.
Un problema práctico importante es el tamaño de bloque: al usar bloques de 64 bits, IDEA sufre las mismas limitaciones que otros cifrados con ese tamaño (riesgo de colisiones por la paradoja del cumpleaños en grandes volúmenes de datos cifrados con la misma clave). Por ello, para nuevas aplicaciones se recomienda generalmente usar cifrados con bloques de 128 bits (por ejemplo, AES) o modos de operación que mitiguen explícitamente este riesgo.
Rendimiento y valoración
En su momento, y según autores como Bruce Schneier, IDEA fue considerado uno de los mejores algoritmos de bloques disponibles para el público. Schneier escribió en 1996: "En mi opinión, es el mejor y más seguro algoritmo de bloques disponible para el público en este momento" (Applied Cryptography, 2ª ed.). Sin embargo, a finales de los años 90 y en décadas posteriores se favorecieron algoritmos más rápidos en software y hardware (como AES) y, debido a algunos avances criptoanalíticos y a las cuestiones de patentes, la recomendación de IDEA se redujo en muchos contextos.
Hoy, IDEA ofrece seguridad razonable si se usa correctamente (clave de 128 bits y gestión adecuada de IV/contador y límites de datos por clave), pero no es la opción preferida para diseños nuevos donde se recomiendan algoritmos estándar modernos (por ejemplo, AES) que además evitan problemas de bloque de 64 bits y suelen ser más eficientes en hardware y software actuales.
Implementación y compatibilidad
IDEA fue ampliamente implementado en software de cifrado de los años 90 y principios de los 2000 (por ejemplo PGP). Existen implementaciones en múltiples lenguajes y bibliotecas criptográficas históricas. Si necesita interoperabilidad con sistemas antiguos que usan IDEA, es una opción válida; para sistemas nuevos, conviene evaluar alternativas más modernas y soportadas por estándares actuales.
Resumen: ventajas y limitaciones
- Ventajas: Diseño elegante y cuidadosamente analizado; resistencia práctica conocida frente a ataques directos contra la versión completa; clave de 128 bits.
- Limitaciones: Bloque de 64 bits (problema para grandes volúmenes de datos), menor rendimiento frente a algoritmos modernos en muchas plataformas, historia de patentes que retrasó su adopción y uso decreciente en implementaciones modernas.
Lecturas y notas
Para profundizar conviene revisar artículos académicos sobre el criptoanálisis de IDEA (incluyendo trabajos de Daemen y otros) y las especificaciones originales de Lai y Massey. El cambio de preferencias en la práctica (hacia AES y otros diseños) responde tanto a consideraciones de seguridad a largo plazo como a rendimiento y estandarización.

Una ronda de encriptación de IDEA con seis subclaves
Preguntas y respuestas
P: ¿Qué es el Algoritmo Internacional de Cifrado de Datos (IDEA)?
R: El IDEA es un cifrado por bloques diseñado por Xuejia Lai y James Massey de la ETH de Zúrich en 1991. Pretendía ser un sustituto del Estándar de Cifrado de Datos y contiene una serie de ocho transformaciones idénticas (rondas) y una transformación de salida (la media ronda).
P: ¿Cómo funciona IDEA?
R: IDEA opera sobre bloques de 64 bits, utilizando una clave de 128 bits. Lo hace durante un total de 8,5 rondas. Los procesos de cifrado y descifrado son similares. IDEA obtiene gran parte de su seguridad intercalando operaciones de diferentes grupos - suma y multiplicación modular, y bitwise eXclusive OR (XOR) - que se eligen para que sean "algebraicamente incompatibles". Cada una de las ocho rondas utiliza seis subclaves, mientras que la media ronda utiliza cuatro; para un total de 52 subclaves. Cada subclave tiene una longitud de 16 bits.
P: ¿Está patentado IDEA?
R: Sí, está patentado en varios países pero puede ser utilizado por cualquiera para uso no comercial. El nombre "IDEA" también es una marca registrada, cuyas patentes expiran en 2010-2011. En la actualidad, MediaCrypt tiene licencia para utilizarlo en todo el mundo.
P: ¿Se utilizó IDEA en Pretty Good Privacy (PGP)?
R: Sí, se utilizó en PGP v2 después de que se descubriera que BassOmatic -el cifrado utilizado en v1- era infranqueable. Actualmente también se puede utilizar con el estándar OpenPGP.
P: ¿Se ha informado de algún ataque con éxito contra IDEA?
R: Todavía no se ha informado de ningún ataque lineal o diferencial con éxito contra él; sin embargo, se han encontrado algunas clases de claves débiles, pero son tan raras que pueden evitarse fácilmente cuando se utiliza el algoritmo de forma segura. A partir de 2007, el mejor ataque que se aplica a todas las claves puede romper IDEA si se reduce a 6 rondas (la versión completa utiliza 8).
P: ¿Qué dijo Bruce Schneier sobre IDEA?
R: En 1996 escribió que era "el mejor y más seguro algoritmo de bloques disponible" en ese momento; sin embargo, en 1999 ya no lo recomendaba debido a que había algoritmos más rápidos disponibles, así como a algunos progresos realizados en su criptoanálisis, además de cuestiones de patentes en torno a su uso
Buscar dentro de la enciclopedia