Por qué el cifrado del lado del cliente es importante para compartir secretos
Por Maxim Novak
El cifrado del lado del cliente es importante para compartir secretos porque garantiza que el servidor nunca vea tus datos en texto plano. Con el cifrado del lado del servidor, el servicio puede leer tus secretos, y también puede hacerlo cualquiera que comprometa su infraestructura. Las herramientas del lado del cliente como Vaulted cifran los datos en tu navegador usando AES-256-GCM antes de enviar nada.
El problema del cifrado del lado del servidor
Las herramientas tradicionales para compartir secretos siguen este flujo:
- Escribes tu secreto en un formulario
- Tu navegador envía el texto plano al servidor
- El servidor lo cifra y almacena el texto cifrado
- Se genera un enlace para el destinatario
El problema está en el paso 2. Tu secreto viaja por la red en texto plano (protegido por TLS, pero completamente visible para el servidor). El servicio tiene acceso a tus datos, aunque sea solo brevemente.
Esto significa:
- Un servidor comprometido expone todos los secretos en tránsito: una filtración de datos a punto de ocurrir
- Los empleados del servicio podrían, en teoría, acceder a tus datos
- Las fuerzas del orden o las solicitudes legales podrían obligar al servicio a entregar los secretos
- Los registros del servidor podrían capturar datos en texto plano de forma involuntaria
Cómo lo soluciona el cifrado del lado del cliente
Vaulted adopta un enfoque diferente. El cifrado ocurre por completo en tu navegador:
- Escribes tu secreto en un formulario
- Tu navegador genera una clave AES-256-GCM y cifra el secreto localmente
- Solo se envía el texto cifrado al servidor
- La clave de cifrado se coloca en el fragmento de la URL (
#), que los navegadores nunca envían a los servidores
El servidor solo ve datos cifrados. No puede descifrar tu secreto porque nunca tiene la clave.
Por qué el fragmento de la URL es importante
El fragmento de la URL (todo lo que va después del símbolo #) tiene una propiedad especial: los navegadores no lo incluyen en las solicitudes HTTP. Cuando alguien abre tu enlace de Vaulted, el fragmento permanece en su navegador. El servidor recibe una solicitud del ID del secreto, pero nunca ve la clave de descifrado.
Esto no es un protocolo personalizado ni un truco. Es la forma en que los navegadores siempre han funcionado, definida en el RFC 3986.
Qué significa esto en la práctica
Con el cifrado del lado del cliente, incluso si los servidores de Vaulted estuvieran completamente comprometidos, un atacante obtendría solo bloques cifrados, inútiles sin las claves que solo existen en los enlaces compartidos. Este es el principio fundamental de la arquitectura de conocimiento cero.
No se requiere confianza. La criptografía habla por sí sola.
¿Listo para compartir un secreto de forma segura? Prueba Vaulted, es gratis.
Relacionado
- ¿Qué es el cifrado del lado del cliente? — definición completa en el glosario
- Laboratorio de cifrado — observa el cifrado AES-256-GCM paso a paso
- ¿Qué es la arquitectura de conocimiento cero? — por qué el servidor nunca puede leer tus datos