Se ha presentado la versión 0.25 del framework GNUnet, diseñado para construir redes P2P descentralizadas y seguras. Las redes creadas con GNUnet no tienen un único punto de fallo y pueden garantizar la privacidad de la información de los usuarios, incluyendo la eliminación de posibles abusos por parte de los administradores con acceso a los nodos de la red.
GNUnet admite la creación de redes P2P sobre TCP, UDP, HTTP/HTTPS, Bluetooth y WLAN, y puede funcionar en modo F2F (Friend-to-Friend). Se admite la superación de NAT, incluido el uso de UPnP e ICMP. Para la dirección de la colocación de datos, se puede utilizar una tabla hash distribuida (DHT). Se proporcionan herramientas para implementar redes en malla. Para la provisión selectiva y revocación de derechos de acceso, se utiliza el servicio de intercambio de atributos de identificación descentralizado reclaimID, que emplea GNS (GNU Name System) y cifrado basado en atributos.
El sistema se caracteriza por un bajo consumo de recursos y el uso de una arquitectura multiprocesador para garantizar la aislación entre componentes. Se proporcionan herramientas para el registro de actividades y la acumulación de estadísticas. GNUnet ofrece una API básica para el lenguaje C y envoltorios para otros lenguajes de programación para facilitar el desarrollo. En lugar de hilos, se sugiere utilizar bucles de eventos y procesos. Incluye una biblioteca de pruebas para el despliegue automático de redes experimentales que abarcan decenas de miles de pares.
Sobre la base de las tecnologías de GNUnet se están desarrollando varias aplicaciones listas:
- El Sistema de Nombres de Dominio GNS (GNU Name System) actúa como un reemplazo completamente descentralizado y libre de censura del DNS. GNS puede coexistir con el DNS y ser utilizado en aplicaciones tradicionales, como navegadores web. A diferencia del DNS, en GNS se utiliza un grafo dirigido en lugar de una jerarquía de servidores en árbol. La conversión de nombres es similar a la del DNS, pero las consultas y respuestas se realizan manteniendo la privacidad: el nodo que procesa la consulta no sabe a quién se envía la respuesta, y los nodos en tránsito y observadores externos no pueden descifrar las consultas y respuestas. La integridad e inalterabilidad de los registros se garantiza mediante mecanismos criptográficos. La zona DNS en GNS se define mediante un par de claves públicas y privadas ECDSA basadas en curvas ellipticas Curve25519.
- Un servicio para el intercambio anónimo de archivos que evita el análisis de la información al transmitir datos exclusivamente en forma cifrada y no permite rastrear quién subió, buscó o descargó archivos, gracias al uso del protocolo GAP.
- Sistema VPN para crear servicios ocultos en el dominio «.gnu» y establecer túneles IPv4 e IPv6 sobre una red P2P. Además, se apoyan esquemas de traducción de IPv4 a IPv6 y de IPv6 a IPv4, así como la creación de túneles IPv4 sobre IPv6 e IPv6 sobre IPv4.
- El servicio GNUnet Conversation para realizar llamadas de voz sobre GNUnet. La identificación de los usuarios utiliza GNS, y el contenido del tráfico de voz se transmite de forma cifrada. La anonimidad aún no se proporciona: otros pares pueden rastrear la conexión entre dos usuarios y determinar su identidad. IP.
- Una plataforma para construir redes sociales descentralizadas Secushare, que utiliza el protocolo PSYC y soporta la distribución de notificaciones en modo multicast con el uso de cifrado de extremo a extremo, para que solo los usuarios autorizados (aquellos a quienes no están dirigidos los mensajes, incluidos los administradores de nodos, no puedan leerlos) tengan acceso a mensajes, archivos, chats y discusiones.
- El sistema de pago GNU Taler, que ofrece anonimato para los compradores, pero rastrea las transacciones de los vendedores para garantizar la transparencia y proporcionar informes fiscales. Soporta la operación con diversas monedas y dinero electrónico, incluidos dólares, euros y bitcoins.
- El servicio GNUnet Messenger para crear aplicaciones de chat seguras. Para garantizar la privacidad y proteger contra la interceptación de mensajes, se utiliza el protocolo CADET (Transporte Confidencial Ad-hoc Descentralizado de Extremo a Extremo), que permite organizar una interacción completamente descentralizada entre un grupo de usuarios usando cifrado de extremo a extremo en los datos transmitidos.
En la nueva versión:
- Se ha reformado el subsistema CORE, que proporciona enrutamiento e intercambio de información entre nodos en una red descentralizada. Se ha propuesto una nueva implementación de canales de comunicación seguros, en los que se utiliza una variante del protocolo de negociación de conexiones cifradas KEMTLS, que emplea los algoritmos X25519, XChaCha20 y Poly1305, así como muchos conceptos del protocolo DTLS 1.3.
- Se ha añadido el servicio PILS (Ciclo de Vida de Identidad de Pares) para la identificación de los participantes de la red, que permite formar identificadores de pares en función del contexto actual de conexión. Por ejemplo, al acceder desde casa, se formará un identificador, mientras que al viajar al extranjero, se generará otro, lo que evitará rastrear el movimiento del participante.
- Se ha mejorado significativamente el rendimiento del servicio para la transferencia (AXFR/IXFR) de zonas DNS en GNS. Se han añadido nuevas utilidades para la sincronización e importación de zonas DNS desde archivos.
- Se ha dejado de dar soporte a AutoTools en el sistema de compilación.
Fuente: opennet.ru
