Cifrar y descifrar texto y archivos

Protege texto o archivos con contraseña (AES-256-GCM) y ábrelos de nuevo.

Si pierdes la contraseña, los datos no se pueden recuperar. Nadie puede restablecerla.

Qué hace esta herramienta

Esta herramienta protege un texto o un archivo entero con una contraseña y lo abre de nuevo cuando introduces la misma contraseña. Quien no la tenga no puede leer el contenido, ni siquiera si consigue el texto o el archivo cifrado. Usa AES-256-GCM, un cifrado estándar, con una clave creada a partir de tu contraseña mediante PBKDF2-SHA-256 con 600.000 rondas. Todo se ejecuta en tu navegador con las funciones Web Crypto que ya trae: tu texto, tu archivo y tu contraseña no se envían a ningún sitio.

Cómo usarla

  1. Elige Cifrar, escribe o pega el texto, o pulsa "Cifrar un archivo" (o suelta un archivo en la página).
  2. Escribe la contraseña y repítela: un error al teclear dejaría los datos bloqueados para siempre.
  3. Pulsa Cifrar. Para texto obtienes una línea de letras, dígitos, guiones y guiones bajos (Base64URL) que puedes copiar a una nota o a un mensaje. Para un archivo descargas un .enc.
  4. Para abrirlo, elige Descifrar, pega el texto (o abre el .enc), escribe la contraseña y pulsa Descifrar. El archivo vuelve con su nombre original y cada byte intacto.

Qué ocurre por dentro

En cada cifrado se generan una sal aleatoria de 16 bytes y un nonce aleatorio de 12 bytes con el generador seguro del navegador. PBKDF2-SHA-256 convierte la contraseña y la sal en una clave de 256 bits con 600.000 rondas, la cifra que la guía de OWASP indica para esta función. AES-256-GCM cifra los datos y añade una etiqueta de autenticación de 16 bytes. La cabecera de 36 bytes (marca "ENC", versión, rondas, sal y nonce) también se autentica, así que cambiar cualquier byte hace fallar el descifrado. Un texto de n bytes pasa a n + 53 bytes y el resultado empieza siempre por RU5DAQ.

Elegir la contraseña

El cifrado es fuerte, así que el punto débil es la contraseña. PBKDF2 frena cada intento, pero no resiste a las tarjetas gráficas especializadas tan bien como las funciones más nuevas, de modo que la longitud es lo que más importa. Cuatro palabras al azar de una lista de 7.776 dan unos 52 bits, cinco unos 65 y seis unos 78. Una frase larga es más fácil de recordar y mucho mejor que una contraseña corta llena de símbolos. El generador de contraseñas crea contraseñas aleatorias.

Lo que no puede hacer

No puede recuperar una contraseña perdida: no existe ninguna copia de la clave. El tamaño del resultado delata el tamaño aproximado de los datos y el nombre de descarga es el original más .enc, así que renombra el archivo si el nombre es sensible. Un dispositivo con keylogger sigue viendo lo que escribes. El código es corto y está comprobado con vectores de prueba publicados, pero no ha pasado una auditoría independiente; para secretos vitales usa software auditado. El resultado solo se abre con este formato. Mira también la herramienta Base64 y el verificador de hash.

Preguntas frecuentes

¿Es seguro escribir una contraseña en una web?

Aquí la página trabaja dentro de tu navegador y no envía el texto, el archivo ni la contraseña a ningún sitio, y no guarda nada. El riesgo que queda es tu propio dispositivo: un keylogger o una extensión que lea páginas vería lo que escribes, aquí o en cualquier web. Usa un dispositivo y un navegador de confianza.

He olvidado la contraseña. ¿Puedes recuperar los datos?

No, ni tú ni nadie. La contraseña es lo único que forma la clave y nunca se guarda. Es el precio de un cifrado que nadie más puede deshacer, así que guarda la contraseña en un gestor de contraseñas.

¿Por qué el error es igual con una contraseña incorrecta y con datos dañados?

AES-GCM comprueba una etiqueta de autenticación. Si la clave es otra o cambia un solo bit, la comprobación falla igual, y la herramienta no puede distinguirlo. Revisa primero la contraseña y luego que el texto se copió completo.

¿Qué tamaño puede tener un archivo?

Hasta 100 MB. AES-GCM cifra el archivo de una vez, así que el navegador guarda el archivo y su resultado en memoria a la vez. Los archivos mayores se rechazan con un aviso para no bloquear la pestaña.