Seguridad

Cifrado antes de salir de tu dispositivo

Tus notas se cifran en tu dispositivo, con claves que solo puedes desbloquear tú, y los agentes que conectes. Aquí tienes cómo funcionan las claves, qué pueden ver nuestros servidores y qué no, dónde se guardan tus datos y los límites que aún no hemos resuelto.

Las claves

Tu contraseña nunca sale de tu dispositivo.

Cuando te registras, tu navegador crea tus claves. Tu contraseña se convierte en una clave maestra en tu dispositivo, con Argon2id (al menos 3 pasadas sobre 64 MiB de memoria). De ella salen dos valores: un hash de inicio de sesión, que es lo único que recibimos cuando inicias sesión (y solo guardamos un hash de él), y la clave que desbloquea las claves de tu cuenta.

Cada espacio de trabajo tiene su propia clave aleatoria, y todo lo que contiene se cifra con esa clave mediante XChaCha20-Poly1305. Recibes una copia tú, y también cada agente que conectes, sellada con el propio par de claves de quien la tiene y firmada por ti, para que nuestro servidor no pueda colar una clave suya. Todo está construido sobre libsodium, sin primitivas criptográficas caseras.

En tus dispositivos

Tu contraseñaArgon2id

Se convierte en tu clave maestra, en tu dispositivo. Ninguna de las dos se nos envía nunca.

Clave de recuperación

32 bytes aleatorios, que se muestran una vez al crearse, para cuando olvides tu contraseña. Nunca se nos envía.

cada una desbloquea una copia cerrada de

Claves de la cuentaX25519Ed25519

Creadas en tu navegador al registrarte: un par de claves abre las claves de tus espacios de trabajo, el otro firma tus cambios.

abre su copia sellada de

Clave del espacio de trabajoXChaCha20-Poly1305

Una clave aleatoria por espacio de trabajo. Cuando revocas un agente, lo que se escribe después usa una nueva.

su propia copia

un agente conectado tiene su propia copia de la clave del espacio de trabajo

Claves del agenteX25519Ed25519

Creadas por la CLI de knowtarium en el equipo que conectas: una abre su propia copia sellada de la clave del espacio de trabajo, la otra firma sus cambios en cuanto respondes por él.

cifra todo lo que contiene

Texto de las notas, títulos, nombres de archivo, propiedades, etiquetas y enlaces, nombres de carpetas y espacios de trabajo, comentarios, historial y adjuntos

tu contenido solo sale cifrado

En nuestros servidores

  • Tus notas, nombres, comentarios y adjuntos, cifrados
  • Las claves de tu cuenta, cerradas con tu contraseña y también con tu clave de recuperación
  • Cada copia sellada de una clave de espacio de trabajo, firmada por ti
  • Claves públicas y firmas
  • Hashes de un solo sentido que comprueban tu contraseña y tu clave de recuperación

Nada de esto abre tus notas sin una clave que solo está en tus dispositivos.

Cómo encajan las claves: tu contraseña y tu clave de recuperación desbloquean cada una las claves de tu cuenta; las claves de tu cuenta abren la clave del espacio de trabajo; cada agente conectado abre su propia copia con sus propias claves; la clave del espacio de trabajo cifra todo lo que hay en él. De tus claves, nuestros servidores solo guardan copias cerradas, claves públicas, firmas y hashes de un solo sentido; tu contenido solo les llega como texto cifrado.

Qué podemos ver

Qué llega a nuestros servidores.

Qué podemos verQué no vemos nunca
Tu cuenta

Qué podemos ver

  • Tu dirección de correo, y si la has confirmado
  • Hashes de un solo sentido que comprueban tu contraseña y tu clave de recuperación, nunca la contraseña ni la clave
  • Tus claves públicas, los parámetros de clave de tu contraseña (su sal y su fuerza) y tus claves privadas, cerradas para que no podamos abrirlas
  • Tus sesiones: cuándo empezó cada una, cuándo estuvo activa por última vez y cuándo termina, y el user-agent del navegador, sin dirección IP
  • Cuándo estuvo activa tu cuenta por última vez
  • Los ajustes de tu app, como el tema de color

Qué no vemos nunca

  • Tu contraseña, y la clave maestra que se crea a partir de ella
  • Tu clave de recuperación
  • Tus claves privadas, abiertas
Facturación

Qué podemos ver

  • Tu plan, el estado de tu suscripción y tus pagos (importes, moneda y fechas)
  • Tu ID de cliente en Polar

Qué no vemos nunca

  • Los datos de tu tarjeta: Polar cobra el pago en sus propias páginas
Tus notas

Qué podemos ver

  • Cuánto almacenamiento usas y el tamaño de cada elemento cifrado
  • Números de versión, marcas de tiempo y qué generación de la clave del espacio de trabajo usa cada elemento
  • Recuentos: versiones, comentarios, comprobaciones, cambios pendientes y fragmentos de adjuntos
  • Cuánto tiempo guarda su historial cada espacio de trabajo

Qué no vemos nunca

  • El texto, los títulos y los nombres de archivo de las notas
  • Propiedades, etiquetas y enlaces
  • Los adjuntos, con sus nombres y tipos
  • Los comentarios y los detalles del historial
  • Qué cambió de una versión a la siguiente
Espacios de trabajo y carpetas

Qué podemos ver

  • Los ID de tus espacios de trabajo, carpetas, notas y adjuntos, y cómo se anidan
  • Cada cambio en una carpeta (quién lo hizo, cuándo y adónde se movió, por ID), con su nombre de antes y de después, cifrado
  • Qué carpeta es la raíz del espacio de trabajo, por ID

Qué no vemos nunca

  • Los nombres de tus espacios de trabajo y carpetas
Agentes

Qué podemos ver

  • Qué persona o agente conectado hizo cada cambio, y de qué tipo fue (una edición, un borrado, una aprobación), por ID, con la firma en los cambios firmados
  • Qué notas, por ID, pide cada agente o navegador, y cuándo, en el momento en que llega la petición (la API de sincronización no lo registra)
  • Si cada comprobación de tus agentes se aplicó o se descartó
  • El acceso de cada agente (lectura o lectura y escritura, y qué carpetas, por ID), sus permisos y cada cambio en ellos que firmaste, sus claves públicas, y cuándo se conectó, se usó por última vez o se revocó
  • Qué carpetas te preguntan antes, por ID, y cuándo lo cambiaste
  • Qué notas son tus instrucciones para agentes, por ID, en una lista que firmaste, y cuándo las actualizas tú o un cambio aceptado

Qué no vemos nunca

  • Los nombres de tus agentes
  • El contenido de lo que un agente leyó, escribió o propuso
  • Lo que dicen tus instrucciones para agentes
  • Lo que encontraron las comprobaciones de tus agentes y qué notas compararon
El web clipper

Qué podemos ver

  • Qué carpeta es la bandeja de entrada de cada espacio de trabajo, por ID, y la clave pública de la bandeja de entrada, con tu firma
  • Por cada extensión que conectas: un hash de su token de acceso, su clave pública de firma con tu firma, el espacio de trabajo en el que guarda (por ID), y cuándo se conectó, se usó por última vez, guardó una página por última vez y se desconectó
  • Por cada página que espera en la cola: su tamaño cifrado, cuándo llegó y qué extensión la envió. Se borra de la cola en cuanto se archiva como nota

Qué no vemos nunca

  • El enlace, el título, la nota y la categoría de cada página que guardas
  • El nombre de la extensión
Red y búsqueda

Qué podemos ver

  • Tu dirección IP, que llega a nuestros servidores con cada petición: la API de sincronización no la registra (sus límites de peticiones solo guardan un hash con clave), y Vercel, que sirve la app web, la guarda poco tiempo en los registros de su servidor

Qué no vemos nunca

  • Tus búsquedas y tu grafo: los dos se crean en tu dispositivo

Dos proveedores ven un poco más. Las notificaciones que nos envía Polar también incluyen tu nombre y tu dirección de facturación, que no guardamos, y podemos verlos en el panel de Polar. Resend, que envía los correos de tu cuenta, recibe tu dirección y el contenido de cada correo.

La extensión de navegador web clipper no tiene ninguna clave que lea tus notas: cada página que guarda se cifra en tu navegador. La política de privacidad explica qué lee y qué guardamos.

La política de privacidad enumera los mismos datos, con por qué los guardamos y durante cuánto tiempo.

Dónde se guarda

Guardado en la UE.

Las bases de datos, los buckets de almacenamiento y los objetos de espacio de trabajo de nuestra API de sincronización los guarda Cloudflare en su jurisdicción de la UE: las bases de datos y los buckets se crearon allí, y cada espacio de trabajo vive en un Durable Object creado también allí. Nuestra comprobación de despliegue rechaza cualquier configuración que ponga los espacios de trabajo o los buckets en otro sitio. Los registros breves de fallos y de notificaciones de facturación inusuales de Polar (qué pasó y en qué parte de nuestro código, con identificadores técnicos como el ID de petición de Cloudflare o el ID de notificación de Polar; nunca direcciones IP ni tu contenido) los guarda el sistema de registros de Cloudflare, que ese ajuste no cubre.

Eso se refiere a dónde se guardan los datos. Cloudflare, una empresa estadounidense, gestiona la API de sincronización por nosotros como encargado del tratamiento. Este sitio web y la app web los sirve Vercel, los correos de la cuenta los envía Resend, y Polar vende los planes de pago como merchant of record (vendedor oficial). Tus notas solo les llegan cifradas, si es que les llegan; la política de privacidad explica qué recibe cada uno.

  • Jurisdicción de la UE

    Bases de datos D1

    Tu cuenta, tus claves cerradas, tus agentes y extensiones de navegador conectados, y el estado de tu facturación.

  • Jurisdicción de la UE

    Buckets R2

    Las versiones cifradas de tus notas, los cambios propuestos por tus agentes y tus adjuntos.

  • Jurisdicción de la UE

    Durable Objects

    Uno por espacio de trabajo: sus carpetas, versiones, comentarios y registros del historial, y las páginas que esperan desde el web clipper, por ID y cifrados.

Agentes

Tu agente descifra en tu equipo.

  • 01

    Descifrado en tu equipo

    Al conectarte, con o pidiéndoselo a tu agente, se crean las claves propias del agente en tu equipo y se obtiene una copia de la clave del espacio de trabajo sellada para ellas. El servidor MCP que ejecuta tu agente descifra ahí las notas. Tus notas solo pasan por nuestros servidores como texto cifrado.

  • 02

    Avalado por ti

    Cuando apruebas un agente, firmas su clave. Cada cambio que guarda va firmado con esa clave, aparece como del agente y se puede deshacer con un clic. En las carpetas configuradas como Ask me first, sus cambios te esperan. Solo borra o reorganiza con los permisos que le das, cada uno firmado por ti.

  • 03

    Su proveedor de IA ve lo que lee

    Lo que lee tu agente va a su proveedor de IA (por ejemplo Anthropic u OpenAI), según las condiciones de ese proveedor. No ejecutamos modelos de IA, así que nada va a ninguno en nuestro nombre.

  • 04

    Revócalo cuando quieras

    Al revocar un agente, queda fuera de nuestros servidores al instante, y lo que se escriba a partir de entonces usa una nueva clave de espacio de trabajo que el agente no tiene. Se queda con lo que ya leyó, y con la clave antigua.

Los conectores remotos aún no existen. Está previsto que los conectores para claude.ai y ChatGPT se ejecuten en un enclave certificado: un servidor sellado cuyo código comprueba tu navegador antes de entregarle una clave. Hoy no existe ninguno, así que ningún servidor de Knowtarium descifra tus notas.

Límites conocidos

Lo que el cifrado no puede arreglar.

Nosotros servimos el código de la app web

Cada vez que abres la app web, tu navegador carga desde nuestros servidores el código que cifra tus notas (está alojado en Vercel). Si alguien manipulara ese código, en nuestro lado o en el de nuestro proveedor de alojamiento, podría filtrar tus claves, y no te resultaría fácil darte cuenta. Una Content Security Policy estricta solo deja que la app ejecute sus propios scripts y hable solo consigo misma y con nuestra API de sincronización (y, mientras conectas un agente, con la CLI de tu equipo), lo que mantiene fuera los scripts inyectados, pero no puede protegerte de un despliegue defectuoso. Todavía no hay forma de comprobar el código que ejecuta tu navegador.

Si pierdes las dos, se pierde todo

Si pierdes tanto tu contraseña como tu clave de recuperación, no podemos descifrar tus notas, y tú tampoco (solo pueden los agentes que ya hubieras conectado, hasta que empieces de cero). Puedes empezar de cero con el mismo correo, pero eso borra todos los espacios de trabajo de la cuenta.

Metadatos que no podemos ocultar

Tu correo, los tamaños, las marcas de tiempo, los recuentos, cómo se anidan tus carpetas y notas, qué notas se piden y cuándo, y qué agente cambió qué. Alguien con acceso a nuestros servidores podría saber cuándo y cuánto trabajas, nunca qué escribiste.

Un agente revocado se queda con la clave antigua

Una clave nueva solo protege lo que se escribe después de una revocación: no se vuelve a cifrar nada. Lo escrito antes sigue con la clave antigua: una nota, hasta que cambia y pasa el periodo de historial de su versión antigua, y los comentarios, registros del historial y adjuntos mientras se conserven. Un agente revocado aún podría leerlo si consiguiera esas copias cifradas, que nuestros servidores ya no le dan.

Las carpetas y los permisos los hace cumplir nuestro servidor

Un agente al que limitas a algunas carpetas, o al que no permites borrar, sigue teniendo la clave del espacio de trabajo; es nuestro servidor el que le impide acceder a las demás carpetas y rechaza lo que no permitiste. Los agentes nunca borran archivos adjuntos, y cada borrado, movimiento o cambio de carpeta lo firma el agente, la app lo comprueba con los permisos que firmaste y aparece con Undo durante dos semanas, o durante tu periodo de historial si es más corto (una nota borrada vuelve mientras tu periodo de historial la conserve). Sus convenciones les dicen que solo borren o reorganicen cuando tú lo pides, pero eso es una instrucción, no un candado. Si una carpeta debe quedar fuera del alcance de un agente pase lo que pase, ponla en otro espacio de trabajo.

Las instrucciones guían, no obligan

Tus instrucciones de carpeta le dicen a un agente cómo escribir, pero el modelo aún puede equivocarse, y un cliente modificado podría saltárselas. Lo que sí hacemos cumplir es quién las cambia: nuestro servidor rechaza que un agente las escriba directamente, y un agente solo aplica instrucciones que tú firmaste. Un agente limitado a algunas carpetas también lee las instrucciones de las carpetas superiores, así que no pongas ahí nada que no deba ver.

Código abierto

Lee el código.

El cifrado, la gestión de claves, el cliente de sincronización, la CLI y el servidor MCP son de código abierto con licencia MIT, en knowtarium-sdk. La app web está construida sobre el mismo paquete. Cada versión de la CLI desde la 0.1.0 se publica en npm desde ese repositorio con procedencia, así que npm registra qué compilación la generó.

Todavía no se ha hecho ninguna auditoría de seguridad independiente. Si encuentras un problema, infórmanos en privado por correo a support@knowtarium.com con “Security” en el asunto.