
En el día a día digital, desde que envías un correo, ves una serie online o usas el banco por Internet, hay un protagonista silencioso trabajando en segundo plano: el cifrado avanzado. Sin él, toda esa información circularía prácticamente a la vista de cualquiera con un poco de mala idea y conocimientos técnicos.
Dentro de ese mundo del cifrado, el estándar que se ha convertido en referencia absoluta es AES, el Advanced Encryption Standard. Se usa en redes Wi‑Fi, VPN, gestores de contraseñas, almacenamiento en la nube, acceso remoto, discos cifrados y hasta en comunicaciones gubernamentales de máximo nivel de secreto. Vamos a ver con calma qué es, de dónde viene, cómo funciona por dentro y por qué se considera tan seguro.
Qué es el cifrado avanzado AES y de dónde sale
Cuando hablamos de AES nos referimos a un algoritmo de cifrado por bloques de clave simétrica que se ha convertido en el estándar mundial para proteger datos sensibles. Simétrica significa que se utiliza la misma clave tanto para cifrar como para descifrar, algo que lo hace más rápido y eficiente que muchos esquemas de clave pública.
La historia arranca en 1997, cuando el NIST (National Institute of Standards and Technology) de Estados Unidos decidió que el viejo DES ya no daba la talla. DES, que había sido el estándar desde los años 70, se estaba quedando corto frente al aumento de potencia de cálculo y los ataques de fuerza bruta, así que el NIST lanzó un concurso internacional para elegir un nuevo algoritmo que protegiera la información bien entrado el siglo XXI.
En enero de 1997 el NIST comunicó formalmente que iba a definir el futuro Advanced Encryption Standard, y en septiembre publicó la convocatoria con los requisitos que debían cumplir los candidatos. La idea era que el algoritmo ganador fuera abierto y usable por cualquiera, sin royalties ni dependencias secretas.
Entre las condiciones básicas, el NIST exigía que el algoritmo propuesto fuera de dominio público, simétrico por bloques, que admitiera bloques de al menos 128 bits, claves de 128, 192 y 256 bits, y que pudiera implementarse tanto en hardware como en software sin volverse una pesadilla de recursos.
Tras recibir propuestas de todo el mundo, el 20 de agosto de 1998 el NIST anunció los 15 algoritmos admitidos a la primera ronda de la competición AES. Los candidatos eran:
- CAST‑256 (Entrust Technologies, Inc.)
- CRYPTON (Future Systems, Inc.)
- DEAL (Richard Outerbridge, Lars Knudsen)
- DFC (CNRS / École Normale Supérieure)
- E2 (NTT, Nippon Telegraph and Telephone)
- FROG (TecApro International, S.A.)
- HPC (Rich Schroeppel)
- LOKI97 (Lawrie Brown, Josef Pieprzyk, Jennifer Seberry)
- MAGENTA (Deutsche Telekom AG)
- MARS (IBM)
- RC6 (RSA Laboratories)
- RIJNDAEL (Joan Daemen, Vincent Rijmen)
- SAFER+ (Cylink Corporation)
- SERPENT (Ross Anderson, Eli Biham, Lars Knudsen)
- TWOFISH (Bruce Schneier y colaboradores)
En la segunda conferencia AES, celebrada en marzo de 1999, se revisaron los análisis criptográficos de estos candidatos. Después de estudiar los comentarios de la comunidad internacional hasta abril de ese año, el NIST redujo la lista y en agosto de 1999 anunció los cinco finalistas: MARS, RC6, Rijndael, Serpent y Twofish.
Durante los meses siguientes, estos cinco algoritmos fueron sometidos a un escrutinio técnico aún más duro, con nuevos ataques teóricos, evaluaciones de rendimiento y análisis de facilidad de implementación. En abril de 2000 tuvo lugar la tercera conferencia AES, con los diseñadores de cada propuesta defendiendo su criatura y discutiendo los últimos resultados.
El periodo público de análisis terminó el 15 de mayo de 2000, y a partir de ahí el NIST se dedicó a estudiar toda la documentación para elegir un ganador. El 2 de octubre de 2000, tras la votación, el algoritmo Rijndael se impuso con 86 votos, frente a 59 de Serpent, 31 de Twofish, 23 de RC6 y 13 de MARS. En noviembre de 2001 se publicó el estándar FIPS 197 que officializaba AES basado en Rijndael.
El diseño de Rijndael no surgió de la nada: era una evolución de un cifrador previo llamado Square, también obra de Daemen y Rijmen, que a su vez se apoyaba en ideas del algoritmo Shark. Esta línea evolutiva explica parte de la estructura tan ordenada y matemática que tiene AES.
Rijndael y AES: en qué se parecen y en qué no
En el lenguaje cotidiano se suele usar Rijndael y AES como si fueran sinónimos, pero estrictamente no son lo mismo. Rijndael es una familia algo más flexible, mientras que AES es un perfil concreto dentro de esa familia fijado por el NIST.
AES trabaja siempre con un tamaño de bloque fijo de 128 bits y admite claves de 128, 192 o 256 bits. Rijndael, en cambio, permite tamaños de bloque y clave que sean múltiplos de 32 bits, entre 128 y 256 bits, lo que da lugar a más combinaciones posibles de parámetros (no todas ellas están estandarizadas para AES).
A diferencia de DES, que se basaba en una red de Feistel, AES/Rijndael está construido como una red de sustitución‑permutación. Esto significa que, en lugar de dividir los datos en dos mitades que se mezclan con la clave de forma iterativa, AES aplica una serie de transformaciones lineales y no lineales sobre una matriz de bytes completa.
El algoritmo está pensado para ser muy eficiente tanto en software como en hardware: necesita poca memoria, se implementa con relativa facilidad y escala muy bien en procesadores modernos, que incluso incluyen instrucciones específicas (AES-NI en Intel y extensiones equivalentes en AMD) para acelerarlo todavía más.
La mayoría de los cálculos internos se realizan en un campo finito concreto (GF(2^8)), lo que da una descripción matemática muy ordenada del algoritmo. Esta estructura tan limpia ha generado cierta preocupación teórica en algunos criptógrafos, que temen que esa regularidad pueda facilitar en el futuro ataques más potentes, aunque de momento no se ha concretado en vulnerabilidades prácticas contra el AES completo.
Cómo funciona el cifrado AES por dentro
En AES, los datos se procesan en bloques de 128 bits que se representan como una matriz de 4×4 bytes llamada state. Cada operación de la ronda transforma esa matriz, mezclando y sustituyendo bytes según reglas bien definidas.
De forma muy simplificada, el proceso de cifrado se compone de tres fases: expansión de clave, rondas intermedias y ronda final. El número total de rondas depende de la longitud de la clave: 10 rondas para AES‑128, 12 para AES‑192 y 14 para AES‑256.
Primero se toma la clave original y se genera, mediante el esquema de claves de Rijndael, una secuencia de subclaves llamadas round keys, una para cada ronda. Este paso se conoce como expansión de la clave y es crítico para que un pequeño cambio en la clave inicial afecte a todo el proceso.
Antes de empezar con las rondas propiamente dichas, se realiza una etapa inicial AddRoundKey. Aquí, cada byte del state se combina (mediante XOR) con el byte correspondiente de la primera subclave, empezando ya a mezclar el texto en claro con el material de clave.
Las rondas intermedias se componen de cuatro pasos encadenados: SubBytes, ShiftRows, MixColumns y AddRoundKey. Estos pasos aportan confusión y difusión, conceptos básicos de la criptografía para que el resultado final parezca aleatorio y cualquier cambio mínimo en la entrada provoque cambios masivos en la salida.
En SubBytes, cada byte del state se sustituye por otro siguiendo una tabla de sustitución predefinida, la famosa S‑box de Rijndael. Esta tabla introduce una no linealidad fuerte, clave para resistir ataques de criptoanálisis lineal y diferencial.
Después llega ShiftRows, donde las filas de la matriz se desplazan cíclicamente hacia la izquierda un número de posiciones diferente para cada fila. Este paso no cambia valores, pero redistribuye los bytes y ayuda a que la influencia de cada byte se propague por el bloque.
El siguiente paso es MixColumns, una operación de mezcla en columna: cada columna de la matriz se transforma mediante una combinación lineal en el campo finito. Este proceso hace que los cuatro bytes de cada columna se mezclen entre sí, aumentando todavía más la difusión.
Por último, se aplica de nuevo AddRoundKey, combinando el state con la subclave de esa ronda. Este paso asegura que el resultado final dependa de toda la clave expandida y no solo del texto en claro.
La ronda final tiene una pequeña variación: incluye SubBytes, ShiftRows y AddRoundKey, pero omite MixColumns. Así se completa el cifrado del bloque y se obtiene el texto cifrado (ciphertext) correspondiente.
Tipos de AES: AES‑128, AES‑192 y AES‑256
Aunque el esquema general de funcionamiento es el mismo, AES se presenta en tres variantes según la longitud de la clave: 128, 192 y 256 bits. Cambia la fuerza criptográfica y el número de rondas, pero la estructura básica es idéntica.
En AES‑128 se emplea una clave de 128 bits y el algoritmo realiza 10 rondas de cifrado. El espacio de claves es enorme, del orden de 3,4 × 10^38 combinaciones, lo suficiente para que, con la tecnología actual, un ataque de fuerza bruta sea completamente inviable.
La variante AES‑192 utiliza una clave de 192 bits y ejecuta 12 rondas. Esto dispara el número de claves posibles hasta alrededor de 6,2 × 10^57 combinaciones, aportando un margen de seguridad adicional a costa de un ligero aumento de coste computacional.
En el extremo superior está AES‑256, con una clave de 256 bits y 14 rondas. Aquí hablamos de unas 1,1 × 10^77 combinaciones posibles, algo astronómico. Es la versión que se suele utilizar en entornos donde la confidencialidad a largo plazo es crítica, como documentos de alto secreto, datos financieros muy sensibles o copias de seguridad de larga duración.
La elección entre las tres variantes es un compromiso entre rendimiento y nivel de seguridad. Por ejemplo, para proteger comunicaciones en un smartphone o una app de mensajería con recursos limitados, AES‑128 ofrece un equilibrio excelente. Para cifrar información gubernamental clasificada o sistemas de acceso remoto corporativos, AES‑256 es la opción preferida.
Seguridad real de AES y tipos de ataques
Desde su estandarización y hasta bien entrados los años 2000, no se conocían ataques prácticos que rompieran AES completo. A día de hoy, sigue considerándose muy robusto frente a los principales tipos de criptoanálisis.
Los ataques publicados más efectivos suelen centrarse en versiones reducidas con menos rondas: hasta 7 rondas para claves de 128 bits, 8 para 192 bits y 9 para 256 bits, según trabajos como el de Ferguson y otros (FSE 2000). Pero estas versiones recortadas no son las que se usan en la práctica, donde se aplica siempre el número completo de rondas.
La NSA revisó todos los candidatos finalistas del concurso AES, incluido Rijndael, y concluyó que eran suficientemente seguros para proteger información gubernamental no clasificada. En 2003, el gobierno de Estados Unidos fue más allá y autorizó oficialmente el uso de AES para información clasificada: con cualquiera de las tres longitudes de clave se pueden proteger datos hasta nivel SECRET, y para TOP SECRET se exige usar 192 o 256 bits.
Algunos expertos han señalado que el margen entre las rondas específicas del estándar y las mejores criptotécnicas publicadas no es gigantesco, lo que abre la puerta a que, si surgiera un avance teórico importante, por ejemplo con procesadores cuánticos, pudiera acercarse a un escenario de ruptura. En criptografía, se considera “roto” un algoritmo cuando existe un ataque más rápido que el fuerza bruta, incluso aunque ese ataque siga siendo impracticable en la realidad (por ejemplo, requerir 2^120 operaciones).
Otra línea de debate gira en torno a la estructura matemática tan ordenada de AES. Muchos cifradores de bloques tienen diseños más ad hoc, mientras que AES se describe con mucha limpieza usando álgebra sobre campos finitos. Esto ha motivado propuestas como el llamado ataque XSL, presentado en 2002 por Nicolas Courtois y Josef Pieprzyk, que pretendía explotar sistemas de ecuaciones sobredefinidas.
Sin embargo, varios criptógrafos han encontrado errores o estimaciones demasiado optimistas en los cálculos originales del ataque XSL, y a día de hoy se considera un enfoque especulativo sin aplicación práctica conocida contra AES completo. Nadie ha demostrado todavía un ataque funcional que mejore de verdad el fuerza bruta en un escenario realista.
Donde sí han aparecido resultados interesantes es en el terreno de los ataques de canal lateral. Estos no atacan la matemática del algoritmo, sino su implementación física: tiempos de ejecución, consumo eléctrico, emisiones electromagnéticas, uso de la caché, etc., que pueden filtrar sutilmente información sobre la clave.
En 2005, Daniel J. Bernstein publicó un ataque por tiempos de caché contra una implementación de AES en un servidor OpenSSL diseñado para exponer al máximo medidas temporales. Necesitaba unos 200 millones de peticiones de texto en claro y no se consideraba viable contra servicios reales, pero demostró que la implementación importa tanto como el algoritmo.
Ese mismo año, Adi Shamir y otros investigadores presentaron nuevos ataques de tiempo de caché que, en ciertos escenarios donde el atacante puede ejecutar código en la misma máquina que realiza el cifrado, permitían recuperar una clave AES completa en muy pocos accesos (del orden de cientos de escrituras y milisegundos de tiempo).
Para mitigar estos riesgos, las implementaciones robustas de AES evitan tablas de búsqueda dependientes de la clave, usan operaciones en tiempo constante y, en hardware, añaden contramedidas físicas. AES como algoritmo sigue intacto; la batalla real está en aplicar buenas prácticas de implementación y gestión de claves.
Ventajas clave del cifrado AES
Entre todos los algoritmos de cifrado disponibles hoy, AES destaca porque combina seguridad muy alta, velocidad y facilidad de implementación, algo que no es tan habitual.
En términos de seguridad bruta, incluso AES‑128 es una bestia: con fuerza bruta tardarías más que la edad del universo en probar todas las claves posibles con la tecnología actual. Si saltamos a AES‑256, el margen de seguridad se vuelve directamente descomunal.
Otra ventaja enorme es que no tiene costes de licencia. Se diseñó expresamente para ser de dominio público, sin patentes ni royalties, lo que ha facilitado que se integre en estándares, protocolos y dispositivos de todo tipo sin trabas legales.
Desde el punto de vista del desarrollo, el algoritmo es relativamente sencillo y elegante. No requiere estructuras de datos exóticas ni grandes cantidades de memoria, y puede implementarse en prácticamente cualquier lenguaje y plataforma, desde microcontroladores modestos hasta grandes servidores.
En cuanto a rendimiento, AES es famoso por su rapidez de cifrado y descifrado. En un viejo Pentium Pro, se hablaba de unos 18 ciclos de CPU por byte (unos 11 MiB/s a 200 MHz). En procesadores modernos con instrucciones AES dedicadas, como Intel Core o AMD Ryzen, se alcanzan fácilmente varios GiB/s, llegando a cifras superiores a 15 GiB/s en modelos potentes como un i7‑12700K.
Si miramos microarquitecturas como Intel Westmere, el cifrado AES con extensiones de hardware puede caer a aproximadamente 1,3 ciclos por byte para AES‑128 y 1,8 para AES‑256, lo que es espectacular en términos de eficiencia. Además, muchos chips incorporan AES directamente en silicio, permitiendo un cifrado casi transparente y muy rápido.
Aplicaciones prácticas del cifrado avanzado AES
Una de las razones de la popularidad de AES es que se ha integrado de forma masiva en protocolos, sistemas y dispositivos de uso cotidiano, hasta el punto de que lo estás usando sin darte cuenta prácticamente todo el rato.
En el ámbito de las VPN, AES es el motor que protege el túnel de datos entre tu dispositivo y el servidor remoto. Cuando te conectas a una VPN para navegar de forma más privada o saltarte restricciones geográficas, AES (normalmente en su versión AES‑256) se encarga de que lo que viaja entre ambos extremos no pueda ser leído por terceros.
Los gestores de contraseñas también suelen utilizar AES para cifrar toda tu bóveda de credenciales bajo una única clave maestra. Si alguien consiguiera el archivo de la base de datos de contraseñas, vería solo texto cifrado sin sentido a menos que conozca esa clave maestra.
En las redes Wi‑Fi modernas (WPA2, WPA3), el cifrado por defecto es AES. Eso significa que todo lo que envías por tu red inalámbrica (desde una foto en el móvil hasta los datos de una compra online) va encapsulado y protegido con este estándar.
Las aplicaciones móviles que manejan datos personales, mensajes o fotos privadas también se apoyan en AES para cifrar tanto el almacenamiento local como las comunicaciones con el servidor. Apps de mensajería, redes sociales, banca online y muchas otras confían en AES como pilar básico de su seguridad.
En el terreno del acceso remoto, soluciones profesionales integran AES‑256 para proteger las sesiones. Plataformas como servicios de acceso remoto empresarial cifran todo el flujo de pantalla, entradas de teclado y archivos transferidos usando AES‑256, garantizando que esas sesiones no puedan ser espiadas con facilidad en la red.
En HTTPS, el protocolo que asegura la navegación web, AES se utiliza dentro de las suites de cifrado de TLS para proteger el canal entre tu navegador y el servidor. Aunque el intercambio inicial de claves suele hacerse con algoritmos asimétricos como RSA o ECDHE, el grueso de la comunicación se cifra con AES por rendimiento.
Los servicios de almacenamiento en la nube (Google Drive, Dropbox, etc.) cifran los archivos en reposo con AES, de modo que, aunque alguien acceda físicamente a los discos del proveedor, lo que vea sean datos ilegibles sin las claves correspondientes.
En los sistemas operativos, funciones como BitLocker en Windows o FileVault en macOS utilizan AES para cifrar discos completos o volúmenes, protegiendo portátiles y equipos frente a pérdida o robo. Si el dispositivo cae en manos ajenas, los datos permanecen bloqueados sin la contraseña o el módulo seguro adecuado.
También es estándar en comunicaciones gubernamentales y militares. Gracias a las garantías formales y al aval del NIST y la NSA, AES se usa para proteger información clasificada en un amplio abanico de organismos públicos.
Cifrado avanzado frente a otros algoritmos: DES y RSA
Para entender por qué AES se ha convertido en el estándar de facto, conviene compararlo con otros algoritmos conocidos como DES y RSA, cada uno con un enfoque diferente.
DES (Data Encryption Standard) fue el predecesor directo de AES en el mundo del cifrado por bloques. Utilizaba una clave efectiva de solo 56 bits, algo que en su momento era razonable pero que hoy es completamente insuficiente: se ha demostrado que se puede romper por fuerza bruta con hardware relativamente accesible.
Además, DES trabajaba con bloques de 64 bits y, aunque su estructura de red de Feistel fue muy influyente, la combinación de longitud de clave corta y tamaño de bloque menor lo ha dejado obsoleto. Prácticamente todos los usos serios de DES han sido sustituidos por AES o por variantes de triple DES mientras duró la transición.
En cuanto a RSA, estamos ante un cifrado de clave pública (asimétrico), muy distinto conceptualmente de AES. RSA maneja pares de claves: una pública, que se puede compartir para cifrar datos o verificar firmas, y una privada, que se guarda en secreto para descifrar o firmar.
Para alcanzar un nivel de seguridad comparable al de AES‑128, RSA necesita claves muchísimo más largas (del orden de 2048 o 4096 bits). Eso hace que sus operaciones sean mucho más pesadas computacionalmente, por lo que no se usa para cifrar grandes volúmenes de datos.
En la práctica, RSA se utiliza sobre todo para intercambiar de forma segura una clave simétrica (a menudo una clave de sesión de AES) durante el establecimiento de conexiones seguras como TLS/SSL. Después, todo el tráfico se cifra con AES, que es mucho más rápido para grandes cantidades de información.
Resumiendo la comparación: AES destaca por ser simétrico, muy veloz y extremadamente robusto; DES ha quedado en la historia como un estándar superado, y RSA es imprescindible para el intercambio de claves y firmas digitales, pero no compite directamente con AES a la hora de cifrar datos masivos en el día a día.
Con todo este recorrido histórico, técnico y práctico, se entiende por qué el estándar de cifrado avanzado se ha convertido en la piedra angular de la seguridad moderna: gracias a su diseño público, su análisis intensivo durante décadas, sus tres tamaños de clave adaptables y su rendimiento, AES es hoy la opción natural para proteger desde archivos personales hasta infraestructuras críticas, y seguirá siéndolo mientras la criptografía clásica siga marcando las reglas del juego.