Los ex alumnos de Signal revelan ‘Encrypted Space’, un sistema para crear aplicaciones de colaboración privadas


Encrypted Space es, en cierto modo, la próxima generación del protocolo Signal, pero para una herramienta más compleja y con todas las funciones que va más allá de los mensajes y las llamadas, dijo Matt Green, profesor de informática que se centra en criptografía en Johns Hopkins. “Han creado un sistema que es una especie de extensión del cifrado de extremo a extremo, donde se tiene una arquitectura real para realizar una colaboración cifrada de extremo a extremo”, dijo Green, quien revisó un documento técnico que describe el proyecto Encrypted Spaces y las aplicaciones prototipo. “Se puede considerar como un protocolo de señal para aplicaciones de colaboración”.

A diferencia de Signal, el código publicado por el grupo Encrypted Spaces no es, por ahora, una única aplicación lista para usar. Más bien, es un depósito de código que invita a investigadores y desarrolladores criptográficos a revisarlo, con el objetivo de permitir a los codificadores crear sus propias aplicaciones colaborativas cifradas, pero sin requerir ningún conocimiento criptográfico. “Queremos que ya no haya razón para ser desarrollador no “Quieren cifrar sus aplicaciones de extremo a extremo, porque lo hace muy fácil”, dijo Trapp.

Cambiar registros y resúmenes sin conocimiento

Encrypted Space tiene como objetivo superar una limitación importante de las aplicaciones cifradas de un extremo a otro: debido a que los servidores no pueden descifrar los datos del usuario, cualquier manipulación de la información debe realizarse en el dispositivo del usuario. Esto funciona bastante bien cuando la aplicación es una tubería que conecta los teléfonos de dos usuarios, cada uno de los cuales tiene la clave para descifrar sus conversaciones. Pero cuando una aplicación es una plataforma colaborativa con docenas o cientos de usuarios trabajando juntos, ese modelo de cifrado de extremo a extremo crea un obstáculo grave: la aplicación no puede simplemente almacenar información del usuario en un servidor y manipularla en una ubicación centralizada como es el caso de plataformas no cifradas como Slack o Google Docs.

Encrypted Space ofrece un nuevo modelo: las aplicaciones creadas con él administran datos desde un servidor centralizado y permiten a los usuarios realizar cambios colectivamente en esa información mientras la mantienen cifrada. Más específicamente, Encrypted Space mantiene un registro de cambios (un registro de cada cambio en los datos cifrados que un usuario realiza a lo largo del tiempo) que se puede compartir con aplicaciones en el teléfono o computadora de cada usuario, para que las aplicaciones puedan aplicar esos cambios localmente y mantener la versión de información de todos sincronizada y actualizada.

El servidor utiliza pruebas de conocimiento cero, una técnica criptográfica relativamente nueva, para demostrarle al dispositivo de cada usuario que no se perdieron cambios ni se realizaron cambios maliciosos, pero el servidor nunca accede a datos no cifrados ni a sus cambios. (De ahí el “conocimiento cero”). De hecho, Encrypted Space puede utilizar una especie de propiedad “acumulada” de pruebas de conocimiento cero para garantizar que cada usuario tenga la última versión de los datos de su grupo sin implementar cada cambio en todo el registro de cambios. “El servidor puede agregar los cambios en una prueba concisa de que el estado actual refleja toda la historia”, dijo Perrin. “Esto puede garantizarle que el registro de cambios se ha implementado correctamente sin tener que enviarlo”.

El servidor también utiliza pruebas de conocimiento cero para monitorear cómo los dispositivos de las personas administran claves criptográficas que permiten que solo los usuarios autorizados descifren y modifiquen datos, permiten invitar a nuevos usuarios y pueden revocar su acceso si alguien abandona el grupo. Los usuarios del espacio también pueden optar por compartir el historial completo de la aplicación o limitar que los invitados reciban nuevos mensajes o datos agregados después de iniciar sesión.



Source link