Privacidad y control: los dos ideales que casi nadie cumple
Los ideales 6 y 7 exigen cifrado extremo a extremo por defecto y propiedad real del dato, y son los que más productos incumplen porque chocan de frente con el modelo de negocio y con un problema técnico aún abierto.
Los ideales 6 y 7 son los que más aparecen en las páginas de producto y los que menos aparecen en las arquitecturas. No es casualidad ni desidia. Cumplirlos elimina funciones que sostienen el negocio y exige resolver un problema que la investigación todavía tiene abierto: cómo autorizar, compartir y revocar acceso cuando no hay un servidor de confianza que decida quién puede leer qué.
- Precisar qué exige el cifrado extremo a extremo por defecto y qué le quita al servidor.
- Distinguir la propiedad real del dato de la mera exportación.
- Identificar las razones económicas y técnicas del incumplimiento sistemático.
- Reconocer el control de acceso descentralizado como frontera abierta.
Ideal 6: privacidad por defecto
La formulación exacta importa. No dice “cifrado en tránsito”, que hoy es higiene básica. No dice “cifrado en reposo”, que protege contra el robo de un disco pero no contra el proveedor. Dice extremo a extremo y por defecto: las claves viven en los dispositivos de las personas usuarias, el servidor de sincronización solo ve texto cifrado, y esa es la configuración inicial y no una casilla que se marca ni un plan de pago superior.
Lo interesante es lo que esa exigencia le quita al servidor. Si el servidor no puede leer el contenido, entonces no puede indexarlo para búsqueda, no puede generar previsualizaciones ni miniaturas, no puede renderizar del lado del servidor, no puede filtrar contenido abusivo, no puede resolver incidencias mirando el documento del cliente, no puede entrenar nada con él y no puede recuperar tu trabajo si pierdes tus claves.
Esa última consecuencia es la que hunde la mayoría de los intentos. La recuperación de cuenta es la función más usada de cualquier producto, y el cifrado extremo a extremo la vuelve estructuralmente imposible sin introducir una custodia de claves que anula la propiedad que se quería garantizar. Las salidas honestas son incómodas: frases de recuperación que la persona debe custodiar, reparto de la clave entre varios dispositivos propios, o recuperación social entre contactos de confianza. Todas trasladan responsabilidad al usuario, y ninguna es cómoda de vender.
El otro coste, menos discutido, son los metadatos. Aunque el contenido sea opaco, el servidor sigue observando quién sincroniza con quién, con qué frecuencia, desde qué direcciones, con qué tamaños y en qué momentos. El grafo social y los patrones de actividad se filtran sin necesidad de leer una sola palabra. Reducir esa fuga exige relleno de tráfico, agrupación temporal o intermediarios ciegos, y todo eso cuesta latencia y dinero.
Hay un matiz que suele perderse en la discusión: los ideales 1 a 3 y el ideal 6 se refuerzan mutuamente, y esa es la mejor noticia del marco. Si el estado autoritativo ya vive en el dispositivo, entonces el servidor no necesita entender el contenido para hacer su trabajo, porque su trabajo se ha reducido a transportar y almacenar bloques opacos. El cifrado extremo a extremo, que en una arquitectura de nube es una amputación funcional dolorosa, en una arquitectura de réplicas es casi gratuito: no le quitas al servidor nada que necesitara. Dicho de otro modo, el ideal 6 es caro exactamente en la medida en que no hayas cumplido los tres primeros.
Cifrar no es una propiedad booleana: es una afirmación sobre quién puede leer qué. La pregunta útil no es “¿está cifrado?” sino “¿qué actor concreto posee una clave capaz de descifrar mi contenido, y en qué circunstancias?”. Si la respuesta incluye al proveedor, aunque sea “solo para dar soporte” o “solo si tú lo autorizas”, el ideal 6 no se cumple: se cumple una versión atenuada que depende de la buena conducta de un tercero.
Ideal 7: propiedad y control últimos
El séptimo ideal es el más malinterpretado del marco, porque la industria lo ha reducido a “puedes exportar tus datos”. La exportación es una condición necesaria y notoriamente insuficiente: un archivo comprimido con volcados en un formato sin documentar es un recibo, no una propiedad.
La propiedad real se comprueba con cuatro pruebas independientes.
Utilidad sin el proveedor. Los datos en tu disco deben ser interpretables por otro programa, hoy, sin pedir permiso ni descargar nada. Si están en un almacén local con esquema propietario y sin especificación, el proveedor sigue siendo el intérprete obligatorio.
Ausencia de interruptor remoto. El programa debe seguir funcionando con la cuenta caducada, suspendida, cancelada o inexistente, y con el servicio apagado para siempre. Una comprobación de licencia en el arranque es un interruptor remoto aunque nunca se accione.
Capacidad de modificación externa. Poder leer no basta: si otro programa puede escribir en tus datos y el tuyo lo acepta al volver a abrirlos, entonces el formato es realmente tuyo. Si solo se admite lectura, tienes un museo, no una propiedad.
Estabilidad frente a decisiones unilaterales. Una actualización del proveedor no puede volver ilegible tu copia local ni forzar una migración que no puedas rechazar y revertir.
Nótese que estas cuatro pruebas son independientes entre sí y que un producto puede aprobar tres y suspender la cuarta. Es habitual encontrar aplicaciones que guardan los datos en el disco en un formato documentado y aun así comprueban la licencia al arrancar; o que funcionan sin cuenta y guardan en un almacén local cuyo esquema no está descrito en ninguna parte. La propiedad no es un interruptor: es la conjunción de cuatro condiciones, y basta que falle una para que el proveedor conserve una palanca sobre tu trabajo.
// Prueba de soberania: ninguna rama del arranque puede depender de la red.
async function arrancar(ruta: string) {
const doc = await almacenLocal.abrir(ruta); // sin red, sin cuenta, sin licencia
interfaz.montar(doc); // el usuario ya puede trabajar
// Todo lo demas es opcional, posterior y no bloqueante.
sincronizacion.intentarEnSegundoPlano();
}
La forma del código es lo de menos; lo que importa es la propiedad estructural: la línea que monta la interfaz no está precedida por ninguna llamada remota, y ningún fallo posterior puede desmontarla.
El contraste con el patrón habitual es instructivo. En una aplicación convencional, el arranque encadena comprobación de credenciales, refresco de la sesión, descarga de configuración remota, verificación de versión mínima y solo entonces apertura del documento. Cada uno de esos pasos es un veto: cualquiera de ellos puede impedir que llegues a tus datos, y todos dependen de una infraestructura que no controlas. La cadena es además acumulativa, porque nadie la revisa entera al añadir un eslabón nuevo. El ideal 7 no exige eliminar esos pasos, exige sacarlos del camino de arranque y convertirlos en tareas de fondo cuyo fallo sea informativo y nunca bloqueante.
Un botón de exportación satisface a los reguladores y no satisface al ideal 7. Poseer significa que el camino normal de uso pasa por datos que ya son tuyos, no que exista un camino excepcional para rescatarlos. Si tu trabajo diario ocurre contra un servidor y la exportación es un volcado ocasional, el proveedor sigue siendo el propietario funcional y tú tienes una copia de cortesía.
Por qué estos dos son los que más se incumplen
Hay una razón económica y una razón técnica, y conviene no confundirlas porque tienen remedios distintos.
La razón económica es directa. El ideal 6 elimina funciones que el mercado espera y que además sostienen la monetización: búsqueda del lado del servidor, previsualización en notificaciones, análisis de uso sobre contenido, moderación, soporte con acceso al documento. El ideal 7 elimina el mecanismo de retención más eficaz que existe, que es el coste de salida. Un producto que cumple ambos ideales renuncia a la dependencia estructural de sus clientes y debe retenerlos solo por calidad, lo cual es una posición comercial mucho más exigente. Cumplir los ideales 1 a 3 es compatible con cualquier modelo de negocio; cumplir el 6 y el 7 no lo es.
Conviene además reconocer que parte del incumplimiento no es cinismo sino inercia de expectativas. Las personas usuarias han aprendido, durante quince años, que recuperar una cuenta es un correo, que el contenido aparece en el buscador del producto y que un mensaje de soporte se resuelve mirando el documento. Un producto que cumple el ideal 6 rompe las tres expectativas a la vez, y esa fricción se percibe como mala calidad antes que como protección. Cumplir el ideal exige, por tanto, un trabajo de diseño y de explicación que va mucho más allá de la criptografía.
La razón técnica es que el cifrado extremo a extremo combinado con colaboración multiusuario y revocación de acceso es un problema genuinamente difícil, no un detalle de implementación. Hay que acordar claves entre un grupo cuya composición cambia, hacerlo sin un servidor que arbitre, mantener el secreto hacia atrás cuando entra alguien nuevo y hacia delante cuando alguien sale, y todo ello mientras las réplicas están desconectadas y no pueden participar en la ceremonia. La revocación es el punto más incómodo: quien ya descargó el texto cifrado y tenía la clave lo tiene para siempre, así que revocar solo puede significar “no verás lo que venga después”, nunca “olvida lo que viste”.
Es exactamente esa frontera la que aborda Keyhive, el proyecto de control de acceso local-first que mantiene Ink & Switch. Que un problema tenga un proyecto de investigación dedicado es la mejor señal de que no está resuelto.
Hay además una tercera razón, más incómoda de admitir, que es puramente organizativa: los ideales 6 y 7 no tienen dueño natural dentro de una empresa. La velocidad la reclama producto, la colaboración la reclama diseño, la fiabilidad la reclama operaciones; pero el cifrado extremo a extremo y la ausencia de interruptor remoto no benefician a ninguna función interna a corto plazo y perjudican a varias. Sin alguien con autoridad que los defienda desde el primer día, sencillamente no se construyen, y después ya no se pueden añadir: cifrar de extremo a extremo un producto que lleva tres años indexando contenido en el servidor no es una migración, es una reescritura del modelo de datos, del modelo de identidad y de la mitad de las funciones.
flowchart TD E[Cifrado extremo a extremo por defecto] --> P1[El servidor no indexa] E --> P2[El servidor no previsualiza] E --> P3[No hay recuperacion por el proveedor] E --> P4[Metadatos siguen expuestos] P3 --> R[Custodia de claves en el dispositivo] R --> D[Revocacion de acceso sin arbitro central] D --> A[Problema abierto de investigacion] style E fill:#a6e3a1,color:#11111b style A fill:#f38ba8,color:#11111b
Cómo se detecta el incumplimiento
Cuatro señales bastan para clasificar un producto que se anuncia como local-first, y ninguna requiere leer su código.
Cuenta obligatoria
Si no puedes abrir un documento local sin iniciar sesión, la autoridad sigue siendo remota.
Búsqueda del servidor
Si el servidor busca dentro de tu contenido, ve tu contenido. No hay excepción posible.
Recuperación cómoda
Si el proveedor puede devolverte el acceso sin tu frase de recuperación, posee una clave.
La cuarta señal es más sutil: mira qué ocurre al caducar la suscripción. Un producto alineado con el ideal 7 degrada a solo lectura o incluso conserva la edición local, porque tus datos no son la palanca de cobro. Un producto que los bloquea acaba de declarar quién manda.
Ninguna de estas cuatro señales requiere desconfianza ni acusación. Son observaciones sobre el comportamiento del programa, y cualquiera puede reproducirlas en diez minutos con un dispositivo, un interruptor de red y una cuenta de prueba. Esa reproducibilidad es lo que convierte la discusión sobre privacidad y propiedad en algo técnico en lugar de en una batalla de declaraciones de intenciones.
Casi todos los ideales se evalúan mejor preguntando qué ocurre cuando algo falla que preguntando cómo funciona cuando todo va bien. Para el 6: si el proveedor sufre una filtración completa de su base de datos, ¿qué aprende el atacante sobre ti? Para el 7: si el proveedor cierra mañana sin avisar, ¿qué pierdes exactamente? Las respuestas a esas dos preguntas describen tu arquitectura con más precisión que cualquier diagrama.
Los ideales 6 y 7 comparten una característica que los distingue del resto y que explica por qué se incumplen tanto: son invisibles mientras todo funciona. Un producto que guarda tus documentos en claro en un servidor y otro que solo guarda texto cifrado se comportan de forma idéntica en el uso cotidiano; la diferencia solo aparece el día de la filtración, el día del cierre, el día de la suspensión arbitraria o el día de la petición judicial. Eso los convierte en propiedades que ningún usuario puede evaluar mediante el uso y que ninguna presión de mercado corrige de forma natural, porque el coste de incumplirlos no lo paga quien decide, sino quien confió, y lo paga años después. Los ideales 1 a 5 se venden solos: la velocidad se nota, la colaboración se nota, el trabajo sin cobertura se nota. La privacidad y la propiedad no se notan nunca, salvo por su ausencia catastrófica. De ahí se sigue la consecuencia práctica más incómoda de todo el marco: son los dos únicos ideales que hay que exigir mediante evidencia técnica verificable —arquitectura publicada, formato documentado, arranque sin cuenta, auditoría independiente— y no mediante confianza en la intención declarada del proveedor. Cualquier producto que pida que se le crea en lugar de permitir que se le compruebe está, en estos dos ejes, pidiendo exactamente lo que local-first nació para dejar de pedir.
- Define cifrado extremo a extremo por defecto e indica cinco funciones concretas que le quita al servidor.
- Explica por qué la recuperación de cuenta cómoda y el ideal 6 son estructuralmente incompatibles.
- Aplica las cuatro pruebas de propiedad a una aplicación que uses y puntúa cada una.
- Argumenta por qué la revocación de acceso no puede significar olvidar lo ya descargado.
- Describe qué información conserva un servidor de sincronización sobre ti aunque nunca vea tu contenido.