AES-256 Explicado: Qué Significa para tus Datos
AES-256 explicado: cómo funciona el cifrado, por qué importan las claves de 256 bits, qué añade el modo GCM, y qué verificar cuando una app afirma usar cifrado AES-256.
AES-256 es el Estándar de Cifrado Avanzado con una clave de 256 bits, estandarizado por el NIST como FIPS 197 en 2001. Es el algoritmo de cifrado simétrico utilizado por el gobierno de EE.UU. para información clasificada, por los bancos en transacciones financieras, y por aplicaciones enfocadas en seguridad para proteger datos en reposo y en tránsito. AES-256 tiene 2^256 claves posibles, un número mayor que la cantidad estimada de átomos en el universo observable. No existe ningún ataque conocido que reduzca este espacio de claves a una búsqueda computacionalmente viable.
Esta guía explica qué hace realmente AES-256, por qué importa el tamaño de la clave, qué significan los distintos modos (ECB, CBC, GCM) y qué buscar cuando una app afirma usar cifrado AES-256.
Qué Hace Realmente AES
AES es un cifrado de bloque simétrico. "Simétrico" significa que la misma clave cifra y descifra. "Cifrado de bloque" significa que procesa datos en bloques de tamaño fijo de 128 bits (16 bytes).
El algoritmo toma tus datos (texto en claro), los combina con una clave y produce una salida codificada (texto cifrado) a través de una serie de transformaciones matemáticas. Estas transformaciones —sustitución, desplazamiento, mezcla y adición de clave— se repiten un número fijo de veces. AES-256 utiliza 14 rondas.
Cada ronda aplica cuatro operaciones:
- SubBytes: Cada byte se reemplaza usando una tabla de sustitución fija (S-box), introduciendo no linealidad.
- ShiftRows: Los bytes de cada fila se desplazan según diferentes desplazamientos, distribuyendo los datos entre posiciones.
- MixColumns: Las columnas se mezclan mediante multiplicación matricial en un campo finito, difundiendo los cambios entre bytes.
- AddRoundKey: La clave de ronda (derivada de la clave principal) se combina con los datos mediante XOR.
Tras 14 rondas, el texto en claro queda completamente codificado. Revertir estas operaciones con la clave correcta recupera los datos originales. Sin la clave, el texto cifrado es indistinguible del ruido aleatorio.
Por Qué Importan los 256 Bits
El "256" en AES-256 hace referencia a la longitud de la clave: 256 bits. Esto determina el número de claves posibles que un atacante debe probar para romper el cifrado por fuerza bruta.
| Tamaño de clave | Claves posibles | Tiempo para romper por fuerza bruta (1 billón de intentos/seg) |
|---|---|---|
| 56 bits (DES) | 7,2 x 10^16 | ~20 horas |
| 128 bits (AES-128) | 3,4 x 10^38 | 10^13 años (10 billones de años) |
| 256 bits (AES-256) | 1,16 x 10^77 | 10^51 años |
Para contextualizar: el universo tiene aproximadamente 1,38 x 10^10 años. Romper AES-256 por fuerza bruta requeriría unas 10^41 veces más tiempo que la edad del universo, incluso a un billón de intentos por segundo.
AES-128 ya es computacionalmente inviable de romper por fuerza bruta. AES-256 proporciona un margen adicional frente a avances futuros en computación, incluida la computación cuántica. El algoritmo de Grover (un ataque de computación cuántica) reduce a la mitad la longitud de la clave, haciendo que AES-256 sea equivalente a AES-128, que sigue siendo inviable. AES-128 quedaría reducido a una seguridad efectiva de 64 bits, lo cual es potencialmente vulnerable. Por eso las aplicaciones de seguridad crítica prefieren AES-256.
Modos AES: Por Qué Importan
AES por sí solo solo cifra un bloque de 128 bits a la vez. Para datos reales (fotos, documentos, vídeos) se necesita un "modo de operación" que gestione datos de más de 16 bytes. El modo determina cómo se encadenan los bloques y tiene implicaciones de seguridad significativas.
ECB (Electronic Codebook) — No usar
Cada bloque se cifra de forma independiente con la misma clave. Los bloques de texto en claro idénticos producen bloques de texto cifrado idénticos, lo que filtra patrones de los datos. La demostración clásica: cifrar una imagen bitmap con ECB preserva la estructura de la imagen en el texto cifrado, haciendo reconocible el contenido. ECB está incluido en el estándar pero nunca debe usarse para datos con estructura o patrones repetidos (lo cual incluye prácticamente todos los datos del mundo real).
CBC (Cipher Block Chaining) — Heredado
Cada bloque se combina mediante XOR con el bloque de texto cifrado anterior antes de cifrarse. Esto elimina la filtración de patrones de ECB. CBC fue el modo estándar durante décadas, pero ha sido superado por GCM en la mayoría de las aplicaciones. CBC requiere un vector de inicialización (IV) aleatorio y no proporciona autenticación integrada (no se puede detectar si el texto cifrado ha sido manipulado).
GCM (Galois/Counter Mode) — Estándar actual
GCM combina el cifrado en modo contador con autenticación de campo de Galois. Proporciona cifrado autenticado: cifra los datos Y produce una etiqueta de autenticación que detecta cualquier modificación del texto cifrado. Si se cambia un solo bit, el descifrado falla en lugar de producir texto en claro corrupto.
El NIST estandarizó GCM en SP 800-38D (2007). Es el modo recomendado para nuevas implementaciones.
AES-256-GCM es AES con una clave de 256 bits en modo Galois/Counter. Esto es lo que deben usar las aplicaciones de seguridad crítica y lo que usa Vaultaire para cifrar el contenido de fotos y archivos.
| Modo | Filtración de patrones | Autenticación | Recomendación actual |
|---|---|---|---|
| ECB | Sí (grave) | No | No usar |
| CBC | No | No (requiere MAC separado) | Heredado; aceptable con HMAC |
| GCM | No | Sí (integrada) | Recomendado para nuevas implementaciones |
Qué Significa AES-256 para el Almacenamiento de Fotos
Cuando una app de almacenamiento de fotos afirma usar "cifrado AES-256", tres cosas deben ser ciertas:
El contenido de los archivos está cifrado con AES-256. Los datos brutos de la foto (píxeles, metadatos, miniatura) se transforman en texto cifrado usando una clave de 256 bits.
Cada archivo usa un vector de inicialización (IV) único. Si dos fotos idénticas se cifran con la misma clave, el texto cifrado debe ser diferente. Esto requiere un IV único por archivo. Sin él, el análisis estadístico puede revelar patrones.
El modo proporciona autenticación (GCM o equivalente). Sin autenticación, un atacante podría modificar el texto cifrado sin ser detectado. El resultado descifrado sería datos corruptos en lugar de un error.
Lo que "AES-256" en una Página de Marketing No te Dice
AES-256 es necesario pero no suficiente. Varios factores críticos determinan si el cifrado realmente protege tus datos:
La derivación de claves importa. ¿Cómo se genera la clave de 256 bits? Si se deriva de un PIN de 4 dígitos utilizando un KDF débil, la seguridad efectiva es de 4 dígitos (10.000 combinaciones), no de 256 bits. Una implementación sólida utiliza PBKDF2 con un alto recuento de iteraciones o Argon2 con parámetros de memoria y tiempo adecuados. usos del bóveda PBKDF2 con HMAC-SHA512 y 600.000 iteraciones para derivar una clave de bóveda local a partir del patrón 5x5 elegido y un dispositivo salt. PBKDF2 hace que cada conjetura sea más costosa; no eleva la entropía del patrón a 256 bits.
El almacenamiento de claves es importante. ¿Dónde vive la llave? Si la clave se almacena en texto sin formato en el entorno limitado de la aplicación, el malware con acceso a archivos puede leerla. manzana Secure Enclave admite operaciones de claves específicas no exportables, no claves AES arbitrarias proporcionadas por la aplicación. En cambio, los diseños de clave simétrica pueden depender de Keychain y Protección de datos, por lo que la documentación debe nombrar la API exacta y la clase de protección en lugar de decir solo "respaldado por hardware".
Qué se cifra importa. Algunas apps cifran el contenido de los archivos pero dejan los nombres de archivo, miniaturas y metadatos sin cifrar. Un examinador forense podría no ver tu foto, pero sí puede ver "vacaciones-playa-2025.jpg" en el listado de archivos. El cifrado integral cubre los metadatos por separado.
El ciclo de vida clave importa. ¿Cuánto tiempo permanece disponible el material clave descifrado? Vaultaire abandona su estado de bóveda activa y de llave maestra cuando se bloquea o cierra y requiere un nuevo desbloqueo. Los bytes de clave simétrica necesariamente existen en la memoria de la aplicación mientras una bóveda está abierta, y Swift y iOS no permita que una aplicación demuestre que se sobrescribieron todas las copias transitorias.
AES-256 en la Práctica: Quién lo Usa
| Entidad | Caso de uso | Modo |
|---|---|---|
| Gobierno de EE.UU. (NSA) | Información clasificada | GCM (o CTR con autenticación separada) |
| Apple (iCloud ADP) | Cifrado de extremo a extremo en iCloud | GCM |
| Signal | Cifrado de mensajes | CBC (con HMAC para autenticación) |
| Bancos | Cifrado de transacciones financieras | GCM |
| 1Password | Almacén de contraseñas | GCM |
| Vaultaire | Almacén de fotos y archivos | GCM |
| VeraCrypt | Cifrado de disco | XTS (optimizado para bloques de disco) |
Conceptos Erróneos Habituales
"Cifrado de grado militar" no significa nada específico. Las páginas de marketing usan esta frase porque suena impresionante. Los ejércitos usan AES-256. También usan AES-128. La frase no te dice el modo, la derivación de clave, el almacenamiento de clave ni qué datos se cifran realmente.
"Cifrado de 256 bits" puede no significar AES-256. Otros cifrados también usan claves de 256 bits (ChaCha20, Twofish, Serpent). Verifica qué algoritmo se especifica. AES-256-GCM es el estándar actual.
AES-256 no protege contra una contraseña débil. Si tu contraseña es "1234" y la derivación de clave es débil, el cifrado es efectivamente de seguridad de 4 dígitos independientemente de la solidez del cifrado. La cadena se rompe por el eslabón más débil.
AES-256 no protege los datos en uso. Cuando ves una foto, debe descifrarse en memoria. En ese momento, existe en texto plano en la RAM. Las implementaciones correctas minimizan esta ventana y eliminan los datos descifrados rápidamente.
Preguntas Frecuentes
¿Se puede romper AES-256?
No existe ningún ataque conocido que rompa AES-256 reduciendo el espacio completo de claves. El mejor ataque conocido (un ataque biclique de Bogdanov, Khovratovich y Rechberger, 2011) reduce AES-256 de 2^256 operaciones a 2^254.4 — una mejora teórica que carece de relevancia computacional en la práctica. AES-256 permanece invulnerado.
¿Es AES-256 resistente a la computación cuántica?
En gran medida, sí. El algoritmo cuántico de Grover reduce a la mitad la longitud efectiva de la clave: AES-256 se convierte en el equivalente a una seguridad de 128 bits frente a ataques cuánticos. AES-128 quedaría reducido a una seguridad efectiva de 64 bits, lo cual es potencialmente vulnerable. NIST recomienda AES-256 para seguridad a largo plazo frente a avances en computación cuántica.
¿Cuál es la diferencia entre AES-128 y AES-256?
AES-128 usa una clave de 128 bits (10 rondas). AES-256 usa una clave de 256 bits (14 rondas). Ambos se consideran seguros frente a los ataques actuales. AES-256 ofrece un margen mayor frente a avances futuros, especialmente la computación cuántica. AES-256 es aproximadamente un 40% más lento que AES-128 debido a las rondas adicionales, pero la aceleración por hardware hace que esto sea insignificante en dispositivos modernos.
¿El cifrado AES-256 ralentiza mi teléfono?
No perceptiblemente en uso normal. Los procesadores Apple modernos proporcionan aceleración de hardware para AES a través de bibliotecas criptográficas del sistema. Eso no significa que la operación AES de una aplicación se ejecute internamente. Secure Enclave. El tiempo todavía depende del tamaño del archivo, el dispositivo, el almacenamiento y la implementación, por lo que una afirmación de seguridad debe basarse en mediciones en lugar de una cifra universal de milisegundos.
¿Cómo sé si una app realmente usa AES-256?
Consulte la documentación de seguridad de la aplicación, no solo su página de marketing. Busque el algoritmo y modo específicos, jerarquía de claves, parámetros de derivación, Keychain o Secure Enclave uso, manejo de nonce, ruta de recuperación y si los metadatos también están cifrados. El código fuente abierto y las auditorías independientes hacen que esas afirmaciones sean más fáciles de verificar.
Conclusión
AES-256 es el estándar de oro para el cifrado simétrico, estandarizado por el NIST, utilizado por gobiernos e instituciones financieras, y resistente a todos los ataques conocidos, incluida la computación cuántica. Al evaluar apps que afirman usar cifrado AES-256, mira más allá del cifrado: verifica el modo (GCM), la derivación de clave (PBKDF2/Argon2 con alto número de iteraciones), el almacenamiento de clave (respaldado por hardware) y qué datos están realmente cifrados (contenido + metadatos).
bóveda usos AES-256-GCM para contenido de archivos, encabezados, metadatos, índices y miniaturas. PBKDF2 con HMAC-SHA512 deriva una clave de bóveda local del patrón y una clave para todo el dispositivo Keychain sal; esa clave desenvuelve una clave maestra aleatoria utilizada para el cifrado de archivos. Las operaciones simétricas se ejecutan en el proceso de la aplicación a través de CryptoKit, mientras iOS Keychain y Protección de datos protege el estado de recuperación cuando el dispositivo está bloqueado. La jerarquía completa está documentada en el modelo de seguridad.