El AES es abierto y, tras veinte años, sigue sin romperse. ¿Por qué entonces Rusia, China y otras potencias construyen sus propios cifrados en vez de adoptarlo?
La especificación completa del AES está publicada y al alcance de cualquiera: está escrita en un estándar abierto, integrada en cada navegador y teléfono, y explicada en los libros de texto. Llevan más de veinte años intentando romperlo en público — sin éxito. Parecería el estándar común ideal para todos. Pero no: Rusia adoptó su propio cifrado — el Kuznyechik, China el SM4, y otros países también tienen sus estándares.
Si el algoritmo es abierto y en veinte años nadie le ha encontrado una sola grieta práctica, ¿qué empuja a estados enteros a pasar años construyendo su propio cifrado en vez de usar el que ya existe? ¿Será que la "transparencia" del AES no es tan completa?
Primero veamos por qué a la matemática del AES casi no hay nada que reprocharle — y luego volvamos a por qué eso no convence a todos. El AES es una red de sustitución-permutación (red SP): en lugar de dividir el bloque por la mitad como una red de Feistel, mantiene el bloque en una matriz de bytes y transforma la matriz entera en cada ronda con cuatro capas de operaciones. Por eso cada operación debe ser reversible.
El bloque de datos se coloca en las celdas de una matriz cuadrada. En el AES real es una matriz 4×4 de 16 bytes (128 bits); en el juego de Ludus Lab es una matriz 2×2 de cuatro nibbles (16 bits). Todos los pasos posteriores operan sobre las filas y columnas de esta matriz.
Cada byte se reemplaza por otro según una tabla fija — la S-box. Esto es la "confusión": la única operación no lineal del AES. Sin ella, todo el cifrado se reduciría a un sistema de ecuaciones lineales y podría resolverse directamente.
Las filas de la matriz se desplazan cíclicamente y las columnas se mezclan entre sí. Esto es la "difusión": en un par de rondas, un bit de entrada cambiado se reparte por todo el bloque. Ambas operaciones son lineales y reversibles.
El estado se suma con XOR a la clave de esta ronda. Las claves de ronda se derivan de antemano de la clave compartida mediante un procedimiento aparte — el calendario de claves. Este es justamente el paso que no se puede deshacer sin conocer la clave.
Las capas se repiten muchas veces: 10, 12 o 14 rondas según la longitud de la clave. La última ronda no tiene MixColumns — no añadiría nada a la robustez. Para descifrar, Bob ejecuta las operaciones inversas en orden inverso — pero solo si conoce la clave.
Cada paso es reversible — pero juntos entrelazan el bloque con la clave de tal modo que no se puede ejecutar hacia atrás sin la clave.
Los propios conceptos de confusión y difusión los introdujo Claude Shannon ya en 1949: propuso construir un cifrado robusto a partir de sustituciones y permutaciones simples repetidas muchas veces. Con esta receta se construyó a principios de los años 70 una versión temprana del cifrado Lucifer de IBM; el Lucifer posterior se convirtió en una red de Feistel y dio lugar al DES, mientras que el AES volvió a la idea original.
El AES se eligió con una apertura sin precedentes: entre 1997 y 2000, el instituto de estándares de EE. UU. (NIST) organizó un concurso internacional — 15 cifrados de todo el mundo y tres años de análisis público, en el que cualquiera podía buscar debilidades. Ganó Rijndael, de los belgas Joan Daemen y Vincent Rijmen, y en 2001 se convirtió en el estándar. Es un proceso honesto y una fortaleza real del AES. Y aun así, la apertura del algoritmo no es lo mismo que confiar en quien lo eligió y en quien tiene el estándar en sus manos.
La desconfianza tiene raíces históricas. En su día la NSA alteró en secreto las S-boxes del cifrado DES — después se supo que era para defenderlo de un ataque, pero veinte años de secretismo sembraron sospechas. Y en 2013 salió a la luz el caso Dual_EC_DRBG — un generador de números aleatorios estándar del NIST en el que, al parecer, la NSA había introducido una puerta trasera. En el propio AES no se ha encontrado nada parecido — es más, su S-box se construye con una regla algebraica abierta, no con números "mágicos". Pero para un estado, "probablemente limpio" no es base suficiente para confiarle sus secretos a un cifrado.
De ahí la soberanía criptográfica: cifrado propio, regulador propio, auditorías por expertos propios e independencia de un estándar ajeno. Esto no significa necesariamente que el AES tenga una puerta trasera — significa que la seguridad nacional no se construye sobre la confianza en una agencia extranjera.
El estándar mundial de facto del internet civil: cifra casi todo el tráfico web, el Wi-Fi y los discos. El regulador es el NIST estadounidense.
Abierto, pero bajo control ajeno
El estándar ruso GOST R 34.12-2015 — también una red SP, como el AES: bloque de 128 bits, clave de 256 bits, 9 rondas y una suma final de la clave. El regulador es el FSB (TC 26).
Cifrado propio, regulador propio
El cifrado nacional de China (estándar GB/T 32907): bloque y clave de 128 bits, 32 rondas. Es obligatorio en muchos usos dentro del país, como el Wi-Fi chino (WAPI).
La soberanía criptográfica de China
Y eso no es todo: casi cada gran potencia tiene su propio cifrado de bloque, y lo que comparten es el propio esquema de red SP, sobre el que se construye la mayoría de los algoritmos modernos:
La demostración interactiva de Ludus Lab ejecuta las mismas operaciones que el AES real, pero sobre un bloque diminuto de 16 bits (una matriz 2×2, 2 rondas) — para que cada paso se vea por completo. Podrás:
Ambos cifrados son redes de sustitución-permutación, pero con historias y parámetros distintos:
| Parámetro | AES | Kuznyechik (GOST R 34.12-2015) |
|---|---|---|
| País de origen | Bélgica / EE. UU. (estándar) | Rusia |
| Año de adopción | 2001 | 2015 |
| Arquitectura | Red SP | Red SP |
| Tamaño del bloque | 128 bits | 128 bits |
| Longitud de la clave | 128 / 192 / 256 bits | 256 bits |
| Número de rondas | 10 / 12 / 14 | 9 + suma final de la clave |
| Cómo se eligió | Concurso internacional abierto | Desarrollo bajo la égida del regulador |
| Regulador | NIST (EE. UU.) | FSB de Rusia (TC 26) |
Tras veinte años de análisis público, los mejores ataques contra el AES-128 (como el "biclique") reducen la búsqueda solo a unos 2126 en lugar de 2128 — apenas una ventaja. En la práctica significa que no hay atajo: solo queda probar todas las claves, y eso es imposible.
Ni siquiera un ordenador cuántico salva al atacante: el algoritmo de Grover solo "reduce a la mitad" la robustez, convirtiendo una clave de 256 bits en el equivalente a una de 128. Por eso el AES-256 se considera resistente incluso a la amenaza cuántica — y es el que se recomienda para la protección a largo plazo.
El candado en la barra de direcciones suele ser AES-GCM: cifra casi todo el tráfico web en TLS
WPA2/WPA3 protegen tu red con AES-CCM; el cifrado de las apps de mensajería populares también se basa en AES
BitLocker, FileVault y el cifrado del almacenamiento de los móviles usan AES; los procesadores lo aceleran con instrucciones AES-NI
Ahora entiendes tanto cómo funciona el AES como por qué su apertura no lo convierte en el cifrado único para todos: donde acaba la matemática, empieza la cuestión de la confianza y el control
En la demostración recorrerás 16 bits desde el texto claro hasta el cifrado y de vuelta — y verás por qué este muro no se puede cruzar sin la clave