Enlace Cifrado
Herramienta de compartir secretos en modo navegador. Escribe tu secreto y obtén un enlace que lo cifra todo del lado del cliente con AES-GCM 256 bits mediante la Web Crypto API. La clave de cifrado vive en el fragmento de URL (tras el #) — según la especificación HTTP, los navegadores no incluyen los fragmentos en las peticiones de red, por lo que la clave permanece en el navegador del destinatario. No se requiere cuenta. La contrapartida frente a servicios estilo Privnote: esta herramienta no mantiene una base de datos de secretos en modo navegador, así que no podemos imponer una regla de "verlo una vez y borrarlo" — el enlace descifrará tantas veces como alguien con él lo intente.
Cómo usar
Hasta 4 KB caben en URL.
Segundo factor.
Envía por canal confiable.
Sin instalación ni cuenta.
Envía un secreto a alguien a través de un enlace cifrado — el cifrado se ejecuta en el navegador, sin necesidad de cuenta
Opciones
Cómo funciona (y lo que NO hace)
- Cifrado AES-GCM 256 bits con clave aleatoria generada en tu navegador.
- La clave de cifrado vive en el fragmento URL (tras #). Por especificación W3C, los navegadores no envían el fragmento en peticiones HTTP — la clave la ve solo quien abre el enlace.
- Sin cuenta, BD o servicio de terceros: cualquiera con el enlace puede descifrar.
- Esto no es "una sola vez" real — cualquiera con copia del enlace puede descifrar cuantas veces quiera.
- Para semántica de una sola vez real, usa un servicio con almacenamiento del lado del servidor.
Abrir el secreto cifrado
Funciones
Preguntas frecuentes
¿Podemos leer tu secreto en el servidor?
En modo navegador, no. La clave de cifrado vive tras el # de la URL y, según la especificación HTTP, los navegadores nunca incluyen los fragmentos en las peticiones de red, por lo que la clave nunca llega a nuestro servidor. El blob cifrado llega en la ruta de la URL (así que los logs de nuestro servidor pueden registrar brevemente el texto cifrado mediante los logs de acceso estándar de nginx), pero sin la clave el texto cifrado es AES-GCM-256 y no se puede descifrar.
¿En qué se diferencia de Privnote?
Privnote almacena el blob cifrado en una base de datos y lo elimina tras la primera vista. En modo navegador esta herramienta no usa una base de datos de secretos — el blob va en la propia URL, así que no podemos imponer "una sola vez". La contrapartida: la clave de cifrado nunca llega a nuestro servidor, pero el enlace es reutilizable mientras alguien lo tenga. (El modo con almacenamiento en servidor de esta herramienta se parece más a Privnote.)
¿Por qué el enlace es tan enorme?
Porque el secreto viaja dentro de él. La dirección lleva el texto cifrado, el vector de inicialización, la sal opcional y la propia clave, así que la longitud del enlace crece con la longitud de lo que envías: cuatro kilobytes de texto dan un enlace de unos seis, y con eso puede cualquier navegador moderno. De ahí se sigue el diseño: no hay copia guardada en ninguna parte que pueda encontrarse después, y por lo mismo no hay manera de recuperar el secreto si el enlace se pierde. Dos consecuencias prácticas. Mándalo de una pieza, porque un enlace partido en dos líneas no funciona al volver a juntarlo. Y un enlace inusualmente largo conviene dividirlo en un par de secretos más pequeños.
Si el enlace ya va cifrado, ¿para qué la contraseña?
Porque los enlaces se filtran de maneras en que los secretos no. El enlace por sí solo basta para abrir el secreto —está pensado así— y se quedará en el historial del chat, en un mensaje reenviado, en una captura, en los registros de lo que lo haya transportado. La contraseña añade un segundo factor que viaja por otro camino: mandas el enlace por un canal y dices la contraseña por teléfono, y ahora quien lea la conversación sigue sin poder abrir nada. Prescinde de la contraseña para algo que no te importaría que viera un colega; úsala en todo aquello en que el propio canal sea la parte frágil, que es la mayoría de los canales.
¿Cuánto tiempo funciona el enlace?
En modo navegador: mientras alguien tenga la URL. No hay estado en base de datos que imponga una caducidad, así que trata los enlaces compartidos como duraderos hasta que confíes en que se hayan eliminado de todos los dispositivos del destinatario. (En el modo con almacenamiento en servidor se aplica un TTL explícito — consulta "Caduca tras".)
¿Puedes hacer una versión "una sola vez" real?
Sí — ese es el modo con almacenamiento en servidor. Usa almacenamiento del lado del servidor con borrado tras lectura, lo que conlleva supuestos de confianza distintos (tienes que confiar en el servidor). El modo navegador (texto cifrado en la URL) se ofrece en paralelo como opción sin base de datos.
Podemos hacerlo — ¡y es! Solo envíanos un mensaje rápido con tu idea. Si quieres comentarla en detalle, déjanos tu email y te responderemos. Puedes mantener el anonimato.