AES Encrypt / Decrypt
Understand AES Encrypt / Decrypt
Cifra y descifra texto en su navegador con AES bajo una contraseña, y ofrece AES-256-GCM (predeterminado), AES-128-GCM, AES-256-CBC, AES-128-CBC o AES-256-CTR.
How it works
Su contraseña no es la clave. PBKDF2 la estira hasta convertirla en una con 100 000 iteraciones de HMAC-SHA-256 sobre una sal aleatoria nueva de 16 bytes, de modo que un atacante paga ese coste en cada intento y una tabla precalculada para una sal no vale nada frente a otra. Se genera un IV aleatorio por cifrado — 12 bytes para GCM, 16 para CBC y CTR —, que es la razón de que cifrar el mismo texto dos veces nunca produzca el mismo texto cifrado. La salida es algoritmo:sal:iv:textocifrado en base64 y lleva todos los parámetros que el descifrado necesita salvo la propia contraseña.
When to use it
- Cifrar un secreto corto antes de que pase por un ticket, un hilo de chat o un documento compartido.
- Producir un vector de prueba para comprobar que una implementación de AES en el servidor coincide con WebCrypto.
- Demostrar la diferencia práctica entre un modo autenticado y uno no autenticado.
- Recuperar algo que cifró aquí antes y guardó como texto.
- Comprobar la interoperabilidad con un sistema heredado que solo acepta AES-CBC.
Watch out for
- GCM detecta la manipulación; CBC y CTR no. Con GCM, un solo byte alterado del texto cifrado hace que el descifrado falle por completo. Con CTR, un atacante que invierte un bit del texto cifrado invierte ese mismo bit del texto claro, y CBC es el modo que hay detrás de la clase de ataques de oráculo de relleno. Elija CBC o CTR solo por interoperabilidad, y añada entonces un MAC aparte sobre el texto cifrado.
- La contraseña es el techo. Las 100 000 iteraciones de PBKDF2 ralentizan los intentos en ese factor, pero no pueden rescatar una contraseña débil: una palabra de diccionario se encuentra igualmente, sea cual sea el tamaño de la clave. La fortaleza de esta salida es la fortaleza de lo que usted escribió.
- Nunca reutilice un IV ni un bloque de contador con la misma clave. Esta herramienta genera una sal y un IV nuevos en cada cifrado, así que tal como se usa es segura, pero la regla importa en cuanto reimplemente el formato: un nonce de GCM repetido filtra el XOR de los dos textos claros y puede exponer la propia clave de autenticación.
- AES-256 frente a AES-128 no es la decisión que importa. Ninguno de los dos tamaños de clave tiene una ruptura práctica; el modo y la contraseña dominan la seguridad real. No elija AES-256-CBC sobre AES-128-GCM por lo grande que suena el número.
Not the right tool for: Enviar un secreto a alguien que no comparta ya su contraseña. Esto es cifrado simétrico sin intercambio de claves, sin identidad y sin confidencialidad persistente: para eso use age, PGP o la gestión de claves de destinatario que ya ofrece su plataforma.
Frequently Asked Questions
¿Qué algoritmo AES debería elegir?
AES-256-GCM es el predeterminado y la respuesta correcta para casi cualquier uso nuevo. GCM está autenticado, así que manipular el texto cifrado hace que el descifrado falle en lugar de devolver basura. Elija CBC o CTR solo cuando lo exija un sistema con el que deba interoperar: ninguno de los dos detecta la manipulación por sí solo.
¿AES-128 es menos seguro que AES-256?
Ambos se consideran seguros; ningún ataque práctico rompe ninguno de los dos tamaños de clave. AES-256 tiene un margen mayor frente a avances futuros y es la opción convencional para datos de larga vida, mientras que AES-128 es ligeramente más rápido. El modo que elija (GCM frente a CBC) afecta a la seguridad real mucho más que el tamaño de la clave.
¿Qué es PBKDF2 y por qué se usa?
PBKDF2 (Password-Based Key Derivation Function 2) transforma una contraseña introducida por una persona en una clave criptográfica mediante 100 000 iteraciones de HMAC-SHA256 con una sal aleatoria. Las iteraciones hacen que los ataques de fuerza bruta sean 100 000 veces más lentos que hashear la contraseña una sola vez.
¿Puedo descifrar esta salida en otro lenguaje?
Sí. La salida es algoritmo:sal:iv:textocifrado, con todos los parámetros que el descifrado necesita. Reproduzca los mismos ajustes de PBKDF2 (100 000 iteraciones, SHA-256, la sal incrustada) y el cifrador indicado en cualquier lenguaje, y el texto cifrado se descifrará igual.
How to Use AES Encrypt / Decrypt
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.