Sincronización y Almacenamiento
Noust prioriza la soberanÃa de los datos. Sus notas son suyas y usted decide adónde van.
Exportación e Importación
Lleve sus datos con usted en un formato estándar.
- Exportación: Genera un paquete binario
.npadque contiene todas las notas, secciones, configuraciones y variables de entorno. Este formato está altamente optimizado y admite activos binarios integrados (como imágenes). Recomendamos cifrar el archivo durante la exportación para obtener la máxima seguridad. - Importación: Restaure su espacio de trabajo desde un archivo
.npadexportado previamente o un archivo.jsonheredado. - Nota: La importación sobrescribirá su sesión activa actual.
Arquitectura de Almacenamiento
Noust utiliza un enfoque por niveles y de alto rendimiento para la persistencia local con el fin de garantizar la máxima confiabilidad y soberanÃa de los datos.
- Motor Primario (IndexedDB): Nuestra base de datos local principal. Los espacios de trabajo se almacenan en particiones aisladas (
workspace_{id}), admitiendo grandes volúmenes de datos y activos binarios, lo que permite el Cifrado Local (At-Rest / En Reposo). - Guardado Automático Nativo y Continuo (Auto-Save): La persistencia de datos es continua, automática y siempre activa en segundo plano. Cualquier cambio en las notas, el diseño del lienzo, los documentos de Nexus y las configuraciones se guarda de forma asÃncrona sin bloquear la interfaz de usuario.
- Alternativo (LocalStorage): Se utiliza como ruta de recuperación solo si el navegador bloquea el acceso a IndexedDB. Nota: El cifrado local no está disponible en el modo alternativo debido a los lÃmites de almacenamiento.
Partición Multi-Espacio de Trabajo y Sincronización Multi-Pestaña (Event Storage)
- Aislamiento de Espacios de Trabajo: Cada espacio de trabajo mantiene su propia partición de almacenamiento. Cambiar o eliminar un espacio de trabajo carga o limpia limpiamente sus nodos de lienzo, instantáneas de posición y metadatos de espacios de trabajo en la nube sin afectar a otros espacios de trabajo.
- Alternancia de Sincronización Multi-Pestaña: Puede personalizar la sincronización en Configuración > Comportamiento:
- Habilitado (Predeterminado): Las modificaciones y los cambios de espacio de trabajo se propagan en tiempo real en todas las pestañas abiertas mediante Event Storage / BroadcastChannel.
- Deshabilitado: Convierte cada pestaña en una sesión independiente, lo que le permite trabajar en diferentes espacios de trabajo simultáneamente en pestañas separadas sin interferencias, mientras que el guardado automático continúa manteniendo todos los datos guardados en el disco.
Sincronización en la Nube
Nuestra sincronización en la nube se basa en una Arquitectura Zero-Knowledge (Conocimiento Cero). Esto significa que nosotros proporcionamos el almacenamiento, pero nunca vemos los datos.
Cómo funciona
- Empaquetado Binario: Los datos y activos de su espacio de trabajo se empaquetan en un sobre binario
.npadpara minimizar la huella de datos y eliminar la sobrecarga de Base64. - Cifrado Local: Los datos se cifran en su navegador mediante AES-256-GCM.
- Blob Cifrado: Solo se envÃa el "blob" cifrado a nuestros servidores.
- Retención de claves: Las claves (su contraseña y el salt opcional) nunca salen de su dispositivo.
- Desincronizar: Los colaboradores o propietarios pueden desincronizar un espacio de trabajo compartido en cualquier momento. Esto corta el enlace en la nube y conserva una copia privada y totalmente editable en su espacio de trabajo local.
Acciones del Espacio de Trabajo en la Nube
- Sync (anteriormente "Save"): EnvÃa y sincroniza los cambios locales de su espacio de trabajo en la nube. Al crear un nuevo espacio de trabajo por primera vez, esta acción se etiqueta como Send (o Sync).
- Load: Abre y carga un espacio de trabajo de su lista en la nube en su sesión activa.
- Sync (anteriormente "Auto-Sync"): Alterna la sincronización automática en segundo plano para el espacio de trabajo activo.
Detección de Actualizaciones e Indicadores Visuales
Noust verifica continuamente el estado de actualización de sus espacios de trabajo en sus dispositivos. Las comprobaciones se realizan tanto manualmente (haciendo clic en Refresh en la lista de espacios de trabajo o abriendo el panel de Sincronización en la Nube) como automáticamente (por ejemplo, al volver a conectarse a internet, reanudar tras la suspensión del sistema o regresar después de un perÃodo prolongado de inactividad).
Cuando se detecta una versión más reciente de su espacio de trabajo en la nube, Noust le alerta en 3 ubicaciones distintas de la interfaz:
- Icono en el Encabezado Global: El icono de Sync en la barra de herramientas principal muestra un indicador de notificación.
- Insignia en la Lista de Espacios de Trabajo: Aparece un punto indicador hueco junto al elemento del espacio de trabajo en Mis Espacios de Trabajo en la Nube o Compartidos conmigo.
- Aviso en el Formulario de la Nube: El botón de acción "Updates Available" se muestra dentro del panel de gestión del espacio de trabajo activo.
Combinación Inteligente (3-Way Line Merge) y Protección contra Conflictos
Al obtener actualizaciones de otro dispositivo, Noust realiza una combinación automática lÃnea por lÃnea en 3 vÃas (3-way merge) en notas, secciones, objetivos y metadatos de topologÃa:
- Prevención de Conflictos: Para evitar sobrescribir accidentalmente cambios realizados en otro dispositivo, Noust bloquea las operaciones manuales de Sync siempre que se detecten actualizaciones remotas o conflictos no resueltos. Debe obtener y resolver las modificaciones remotas antes de enviar cambios locales.
- Resolución Granular de Conflictos: Si los cambios colisionan en la misma lÃnea exacta, Noust abre un modal interactivo de resolución de conflictos que le permite seleccionar lÃnea por lÃnea qué versión (Local vs. Nube) conservar.
Auto-Update (Plan de Suscripción de Pago)
Los usuarios de planes de pago obtienen acceso a Auto-Update, que automatiza la sincronización en segundo plano sin interrumpir su flujo de trabajo:
- Descarga y Combinación Automatizadas: Cuando se detecta una actualización remota y no existen conflictos estructurales, Noust descarga y combina la versión remota automáticamente en segundo plano.
- Seguridad y Verificación de Contraseña: Auto-Update funciona sin problemas siempre que Sync esté activo y su sesión local esté descifrada con la misma contraseña de seguridad que el espacio de trabajo de la nube entrante.
- Seguridad durante la Escritura: Para evitar colisiones o saltos de cursor mientras escribe, Auto-Update espera un breve perÃodo de inactividad de escritura en el editor antes de aplicar la combinación silenciosa.
- Notificaciones Discretas: Una notificación sutil confirma cuando una actualización automática en segundo plano se ha completado con éxito.
- Bloqueo de Seguridad en Conflictos: Si ocurre un conflicto estructural durante una actualización automática, Noust detiene la combinación automática para proteger sus datos, marca el espacio de trabajo con un aviso de actualización y le pide que resuelva el conflicto manualmente.
Indicadores Visuales
El icono de Nube aparece en el encabezado global para indicar que el espacio de trabajo activo está sincronizado con la nube. Cuando el icono de nube está relleno, indica que el Auto-Update está activado para este espacio de trabajo.
Requisitos de descifrado
Para restaurar sus datos desde otro dispositivo, debe proporcionar:
- Su Contraseña de Cifrado.
- Su Salt Personalizado (si se utiliza).
Importante
No existe ningún mecanismo para recuperar sus datos si pierde su contraseña o salt. Nosotros no los almacenamos y no podemos restablecerlos por usted.
Colaboración y Espacios de Trabajo Compartidos
Noust le permite compartir espacios de trabajo especÃficos en la nube con otros usuarios.
- Compartido selectivo: Comparta solo los espacios de trabajo que elija.
- Protección contra Descubrimiento (Basado en Nombres de Usuario): El uso compartido está restringido intencionalmente solo a nombres de usuario exactos. Evitamos estrictamente listas públicas para garantizar que terceros nunca puedan descubrir o "enumerar" su presencia en Noust.
- Roles de Colaboradores: Cada colaborador puede recibir uno de dos roles:
- Lector (Reader): Puede sincronizar y ver el espacio de trabajo compartido en modo de solo lectura.
- Editor: Puede sincronizar el espacio de trabajo y enviar cambios locales para la revisión del propietario.
- Gestión de roles y revocar acceso: Como propietario del espacio de trabajo, puede cambiar el rol de un colaborador (Lector/Editor) o revocar el acceso por completo en cualquier momento. Al promover a Editor, la confirmación se autentica a través del modal de credenciales.
Actualizaciones de Colaboradores y Revisión del Propietario
Cuando un colaborador Editor envÃa cambios, el propietario del espacio de trabajo recibe una notificación de actualización pendiente en el panel de Colaboradores.
- Panel de Actualizaciones Pendientes: El propietario puede ver cuántas actualizaciones están pendientes, quién las envió, su tamaño y fecha/hora.
- Revisión Provisional: Al hacer clic en Revisar, los cambios del colaborador se cargan en el espacio de trabajo para inspección visual. El propietario ve el resultado combinado directamente en el editor antes de tomar una decisión.
- Aceptar o Descartar: Después de revisar, el propietario puede:
- Aceptar Todo: Aplica y guarda los cambios combinados en el espacio de trabajo de la nube.
- Descartar Todo: Restaura instantáneamente el espacio de trabalho a su estado original sin aplicar cambios. No se pierden datos locales.
- Eliminar sin Revisar: El propietario también puede eliminar una actualización pendiente directamente desde el panel sin abrirla.
Manejo de Conflictos
Si tanto el propietario como el colaborador editaron la misma nota o lÃnea, Noust realiza automáticamente un 3-way merge. Cuando un conflicto no se puede resolver automáticamente, se muestran marcadores de conflicto en el texto para que el propietario tome una decisión informada antes de aceptar o descartar.
Cifrado de Extremo a Extremo (Zero-Knowledge Sharing)
Los espacios de trabajo compartidos mantienen la misma garantía de Zero-Knowledge que los espacios de trabajo personales. La contraseña del espacio de trabajo se entrega a los colaboradores como un Sobre E2EE cifrado, sellado con la clave pública E2EE del colaborador.
- Autorización del Colaborador y Requisito de Contraseña: Al autorizar a un colaborador, el propietario debe ingresar la misma contraseña de cifrado (y salt) utilizada en el espacio de trabajo. El navegador cifra estas credenciales en el Sobre E2EE utilizando la clave pública del destinatario.
- Entrega por Sobre: El servidor nunca tiene acceso a la contraseña del espacio de trabajo, claves privadas o contenido en texto plano.
- Validación de Credenciales (
keyVerifier): Cuando un Editor envía un update, el servidor valida un hash SHA-256 (keyVerifier) derivado de la contraseña y el salt del espacio de trabajo. Esto garantiza que el colaborador está utilizando exactamente la misma contraseña y salt originales definidos por el propietario antes de aceptar el envío. - Actualización de Claves de Colaboradores (
Update Keys): Si el propietario cambia la contraseña o el salt de un espacio de trabajo en la nube previamente compartido, los colaboradores perderán el acceso porque sus sobres fueron cifrados con las credenciales anteriores. El propietario puede restaurar el acceso en cualquier momento utilizando el botón Update Collaborator Keys (el icono de llave en la tarjeta de Colaboradores o marcando la opción "Update collaborator keys on sync" en el panel de Sincronización) para volver a cifrar los sobres y actualizar elkeyVerifierpara todos los colaboradores de una sola vez. - Requisito de Desbloqueo de la Bóveda: Los colaboradores deben tener su Bóveda E2EE desbloqueada (en Perfil > Seguridad) para descifrar sobres y acceder a espacios de trabajo compartidos.
Transparencia Criptográfica
- Espacios de Trabajo Privados y Modo Lector (Reader): Operan en Zero-Knowledge absoluto — ninguna credencial, hash o pista criptográfica se envía o almacena en el servidor.
- Validación Exclusiva para Editores: Solo cuando el propietario otorga permisos de Editor a un colaborador, un hash unidireccional SHA-256 (
contraseña + salt) se registra temporalmente comokeyVerifier. Sirve exclusivamente para que el servidor valide si los colaboradores con rol de Editor están enviando cambios con las credenciales de cifrado correctas (contraseña y salt), sin que el servidor conozca jamás su contraseña real. - Actualización Automática en Sync: Cada vez que el propietario sincroniza (
Sync/ update) un espacio de trabajo en la nube, elkeyVerifierse actualiza automáticamente en el servidor solo si existe al menos un colaborador con rol de Editor en dicho espacio. - Ciclo de Vida Estricto: Este hash permanece asociado al espacio de trabajo en la nube únicamente mientras existan editores activos; al revocar el permiso de editor o eliminar a un colaborador, el
keyVerifierse elimina inmediata y permanentemente del servidor en caso de que no quede ningún otro editor activo en el espacio de trabajo (o si el espacio de trabajo se elimina de la nube).
AuditorÃa de Seguridad (Plan Avanzado)
Los usuarios del Plan Avanzado obtienen acceso a una pista de auditorÃa transparente y centrada en la privacidad.
- Logs de Acceso: Realice un seguimiento de sus propios eventos crÃticos (Inicios de sesión, Push de datos, Eliminaciones).
- Protección de Privacidad: Los registros identifican la familia del dispositivo/sistema operativo y el tipo de acción, pero nunca exponen su dirección IP pública en la interfaz del usuario.
- Verificación: Utilice estos registros para monitorear el acceso no autorizado en sus dispositivos.
Gestión y Eliminación de Cuentas
Noust proporciona un proceso seguro de fin de vida para sus datos.
- Eliminación Lógica (Soft Delete): Cuando solicita la eliminación de la cuenta, el acceso se suspende de inmediato, pero los datos se retienen durante un perÃodo de gracia de 30 dias para su recuperación antes de la purga irreversible.
- Mecanismo de confirmación: Para evitar pérdidas accidentales, la eliminación requiere una confirmación deliberada de coincidencia de cadenas (
{username}_delete). - SoberanÃa de los datos: Después de 30 dÃas, se purga su identidad, aunque se pueden retener algunos metadados durante un máximo de 6 meses en registros técnicos cifrados para el cumplimiento legal (LGPD/GDPR) antes de la eliminación permanente absoluta.