Die Veröffentlichung des Frameworks GNUnet 0.17, das für den Aufbau sicherer, dezentraler P2P-Netzwerke entwickelt wurde, wurde vorgestellt. Die mit GNUnet erstellten Netzwerke haben keinen einzelnen Ausfallpunkt und können die Vertraulichkeit der Benutzerdaten garantieren, einschließlich der Möglichkeit, Missbrauch durch Geheimdienste und Administratoren, die Zugang zu den Netzwerkknoten haben, zu vermeiden.
GNUnet unterstützt die Erstellung von P2P-Netzwerken über TCP, UDP, HTTP/HTTPS, Bluetooth und WLAN und kann im F2F-Modus (Friend-to-friend) arbeiten. NAT-Umgehungen werden unterstützt, einschließlich der Verwendung von UPnP und ICMP. Für die Adressierung von Datenspeicherungen kann eine verteilte Hashtabelle (DHT) verwendet werden. Mittel zum Aufbau von Mesh-Netzwerken werden bereitgestellt. Für die selektive Bereitstellung und den Widerruf von Zugriffsrechten wird der Dienst für den dezentralen Austausch von Identifikationsattributen reclaimID verwendet, der GNS (GNU Name System) und attributbasierte Verschlüsselung (Attribute-Based Encryption) nutzt.
Das System zeichnet sich durch einen geringen Ressourcenverbrauch und die Verwendung einer Multi-Prozess-Architektur zur Gewährleistung der Isolation zwischen den Komponenten aus. Flexible Mittel für das Loggen und die Sammlung von Statistiken werden bereitgestellt. Zur Entwicklung von Endanwendungen bietet GNUnet eine API für die Programmiersprache C und Bindings für andere Programmiersprachen an. Zur Vereinfachung der Entwicklung wird empfohlen, anstelle von Threads Ereignisschleifen und Prozesse zu verwenden. Es enthält eine Testbibliothek für die automatische Bereitstellung experimenteller Netzwerke, die Dutzende von Tausenden von Peers abdecken.
Auf Basis der Technologien von GNUnet werden mehrere fertige Anwendungen entwickelt:
- Das Domain-Namensystem GNS (GNU Name System) fungiert als vollständig dezentrale und zensurresistente Alternative zu DNS. GNS kann neben DNS eingesetzt werden und in traditionellen Anwendungen wie Webbrowsern verwendet werden. Im Gegensatz zu DNS verwendet GNS anstelle einer baumartigen Hierarchie von Servern ein gerichtetes Diagramm. Die Namensumwandlung ähnelt der von DNS, aber Anfragen und Antworten werden unter Wahrung der Vertraulichkeit durchgeführt – der verarbeitende Knoten weiß nicht, an wen die Antwort gegeben wird, und Transitknoten sowie Dritte können Anfragen und Antworten nicht entschlüsseln. Die Integrität und Unveränderlichkeit der Einträge wird durch den Einsatz kryptografischer Mechanismen sichergestellt. Eine DNS-Zone in GNS wird mit einem Paar von öffentlichen und privaten ECDSA-Schlüsseln auf Basis der elliptischen Kurven Curve25519 definiert.
- Ein Dienst für anonymes Dateiabladen, der es nicht ermöglicht, Informationen zu analysieren, da Daten ausschließlich in verschlüsselter Form übertragen werden, und der nicht erkennt, wer Dateien hochgeladen, gesucht oder heruntergeladen hat, dank der Verwendung des GAP-Protokolls.
- Das System VPN zur Erstellung versteckter Dienste im Bereich „.gnu“ und zum Durchleiten von IPv4- und IPv6-Tunneln über ein P2P-Netzwerk. Zusätzlich werden IPv4-zu-IPv6- und IPv6-zu-IPv4-Übersetzungen sowie die Erstellung von IPv4-Über-IPv6- und IPv6-Über-IPv4-Tunneln unterstützt.
- Der GNUnet Conversation-Service für Sprachübertragungen über GNUnet. Zur Identifizierung der Benutzer wird GNS verwendet, und der Inhalt des Sprachverkehrs wird verschlüsselt übertragen. Anonymität wird derzeit nicht gewährt — andere Peers können die Verbindung zwischen zwei Benutzern verfolgen und ihre Identität bestimmen. IP-Adressen.
- Die Plattform für den Aufbau dezentralisierter sozialer Netzwerke Secushare nutzt das PSYC-Protokoll und unterstützt die Verbreitung von Benachrichtigungen im Multicast-Modus mit End-to-End-Verschlüsselung, sodass nur autorisierte Benutzer Zugriff auf Nachrichten, Dateien, Chats und Diskussionen haben (nicht an die Nachrichten adressierte Personen, einschließlich der Administratoren von Knoten, können diese nicht lesen);
- Ein System für die Organisation von verschlüsselter E-Mail pretty Easy privacy, das GNUnet zum Schutz von Metadaten verwendet und verschiedene kryptografische Protokolle zur Schlüsselverifizierung unterstützt;
- Das Zahlungssystem GNU Taler gewährleistet Anonymität für Käufer, verfolgt jedoch die Transaktionen von Verkäufern, um Transparenz zu schaffen und steuerliche Berichterstattung zu ermöglichen. Es wird die Arbeit mit verschiedenen bestehenden Währungen und elektronischen Geldsystemen unterstützt, einschließlich Dollar, Euro und Bitcoin.
In der neuen Version von GNUnet wurden Änderungen vorgenommen, die die Protokollkompatibilität beeinträchtigen und möglicherweise Probleme bei der Interaktion von Knoten auf der Basis von GNUnet 0.17 und älteren Versionen verursachen. Insbesondere wurde die Kompatibilität auf der Ebene der verteilten Hash-Tabelle (DHT) verletzt — die DHT-Implementierung wurde auf die neue Version der Spezifikation aktualisiert, und die Definitionen der Blocktypen wurden in die GANA (GNUnet Assigned Numbers Authority) übertragen. Die Unterstützung für ausgerichtete und umgruppierte Nachrichtenformate wurde hinzugefügt. Aus der neuen Version der Spezifikation wurden auch inkompatible Änderungen zurückübertragen, die das dezentrale Domain-Namensystem GNS (GNU Name System) betreffen. Für in GNS hinzugefügte Datensätze wurde die Möglichkeit zur Konfiguration der Lebensdauer des Eintrags bereitgestellt.
Quelle: opennet.ru
