¿Cómo funciona el algoritmo de cifrado Rijndael?
También conocido por la sigla AES
Transmitir de forma segura información estrictamente confidencial sin que personas no autorizadas obtengan acceso ha sido siempre un desafío. Los primeros «lenguajes secretos», como los simples desplazamientos de letras, son triviales de descifrar con la capacidad de cálculo moderna. Hoy protegemos los datos con métodos criptográficos, definidos matemáticamente con precisión y cuya seguridad ha sido evaluada públicamente.
Estos métodos utilizan una clave, que solo conocen el emisor y el receptor. El cifrado y el descifrado siguen un algoritmo de cifrado; es decir, un procedimiento matemático claramente definido.
Password Depot cifra sus datos confidenciales con el algoritmo Rijndael, estandarizado como AES (Advanced Encryption Standard).
A continuación, explicamos el algoritmo y lo situamos en su contexto técnico.
Advanced Encryption Standard (AES): la variante estandarizada de Rijndael
La National Bureau of Standards de EE. UU. (hoy NIST) estandarizó en 1977 el DES; este estándar fue retirado, porque ya no era suficientemente seguro (comunicado del NIST). Como sucesor, NIST eligió en 2001 Rijndael y lo estandarizó como Advanced Encryption Standard (AES) (FIPS 197).
Importante: AES es un subconjunto de la familia Rijndael. AES fija el tamaño de bloque en 128 bits y permite claves de 128, 192 o 256 bits (Nota de NIST, FIPS 197 (PDF)).
AES está autorizado para proteger información de organismos gubernamentales de EE. UU. hasta el nivel TOP SECRET (véase Hoja informativa CNSSP‑15 así como las preguntas frecuentes actuales de la NSA sobre CNSA‑2.0).
Cómo funciona Rijndael/AES (resumen breve)
Rijndael es un cifrado de tipo red de sustitución-permutación. Las ideas clave son sustituciones a nivel de byte, transformaciones lineales y XOR.
Proceso a nivel de bloque ("State" de 128 bits)
- Expansión de clave (Key Schedule): A partir de la clave se derivan Nr + 1 claves de ronda (p. ej., 11 con AES-128, 13 con AES-192, 15 con AES-256). Fuente: FIPS 197.
- Ronda inicial: AddRoundKey – el bloque de texto plano (como matriz de 4×4 bytes) se combina mediante XOR con la primera clave de ronda.
- Rondas 1 … Nr:
- SubBytes: cada byte se sustituye mediante una S-Box (inverso multiplicativo en GF(28) más transformación afín con constante
0x63). Fuente: FIPS 197. - ShiftRows: las filas de la matriz de estado se desplazan cíclicamente.
- MixColumns: las columnas se mezclan mediante multiplicación de matrices sobre GF(28) mezcladas.
- AddRoundKey: XOR con la clave de ronda correspondiente.
- SubBytes: cada byte se sustituye mediante una S-Box (inverso multiplicativo en GF(28) más transformación afín con constante
Nota: En la última ronda se omite MixColumns. El número de rondas es de 10/12/14 para claves de 128/192/256 Bit (FIPS 197).
AES puede implementarse en software, firmware o hardware (FIPS 197). Para el uso práctico, se utilizan Modos de funcionamiento utilizados, p. ej. CBC, CTR o GCM (cifrado autenticado). Encontrará recomendaciones en NIST SP 800–38A y NIST SP 800–38D (GCM/GMAC).
Importante para contextualizar: AES es un cifrado simétrico para el cifrado de datos. El intercambio de claves suele realizarse con métodos asimétricos ((EC)DH/RSA). No obstante, AES puede encapsular claves de forma segura (“Key Wrap”); véase NIST SP 800–38F.
Especificación oficial
Encontrará la referencia aquí: https://csrc.nist.gov/files/pubs/fips/197/final/docs/fips-197.pdf
Ataques de fuerza bruta
fuerza bruta significa que un atacante todas las claves posibles. Los métodos clásicos como DES con claves de solo 56 bits pueden vulnerarse hoy en la práctica; por ello, en 2005 el NIST lo retiró oficialmente (NIST).
En cambio, los métodos modernos como AES con claves de 128/192/256 bits tienen un espacio de claves astronómicamente grande. En la práctica, es menos decisivo el algoritmo que la derivación de claves a partir de contraseñas y la calidad de la contraseña maestra.
Password Depot dificulta aún más los ataques de fuerza bruta mediante una función de retardo: tras una introducción incorrecta de la contraseña maestra, el programa permanece bloqueado durante unos segundos.
Conclusión: Con una implementación correcta, modos de funcionamiento adecuados (p. ej., GCM) y una longitud de clave suficiente, AES se considera actualmente seguro a muy largo plazo.
Más información sobre ataques de fuerza bruta.
Fuentes adicionales
- FIPS 197 – Advanced Encryption Standard (AES)
- FIPS 197 – PDF (especificación original)
- NIST: AES es un subconjunto de Rijndael (tamaño de bloque de 128 bits)
- NIST SP 800–38A – Modos de funcionamiento (ECB/CBC/CFB/OFB/CTR)
- NIST SP 800–38D – GCM/GMAC (cifrado autenticado)
- NIST SP 800–38F – AES Key Wrap
- Hoja informativa CNSSP–15 – Uso de AES para información secreta/de alto secreto
- NSA: CNSA 2.0 FAQ – requisitos actuales
- NIST: Retirada de DES (contexto)
Comprender los ataques de fuerza bruta
Descubra por qué la longitud de la contraseña es decisiva y cómo puede protegerse.
Más información sobre los ataques de fuerza bruta