De IETF (Internet Engineering Task Force), die zich bezighoudt met de ontwikkeling van internetprotocols en -architectuur, is begonnen met het standaardiseringsproces van het GNS (GNU Name System), dat wordt ontwikkeld door het project als een volledig gedecentraliseerd en censuurbestendig alternatief voor DNS. Momenteel is er een eerste conceptversie van de standaard, waarna een RFC zal worden opgesteld die de status van 'Voorgestelde standaard' krijgt. GNS
Een DNS-zone in GNS wordt gedefinieerd met een combinatie van een openbaar en een privƩkruid
op basis van elliptische krommen . Het gebruik van Curve25519 wordt door sommigen als een vreemde stap gezien, aangezien voor ECDSA andere soorten elliptische krommen worden gebruikt, en in combinatie met Curve25519 meestal een algoritme voor digitale handtekeningen wordt toegepast meer modern , cascade Deze aanpak wordt verklaard door de noodzaak om hiƫrarchische sleutels te implementeren, die het mogelijk maken om de root openbare sleutel te gebruiken voor het extraheren van het afgeleide openbare sleutel, gebruikmakend van de lineariteit van de Curve25519-kromme. Dit kenmerk maakt het mogelijk om afgeleide openbare sleutels te verkrijgen zonder kennis van de gesloten root-sleutels. De genoemde techniek wordt ook
in Bitcoin gebruikt. De grootte van 32 bytes voor de sleutel is gekozen zodat de sleutel in ƩƩn DNS-record past. GNUnet 0.13
Daarnaast kan worden vermeld framework , dat is ontworpen voor het opzetten van veilige gedecentraliseerde P2P-netwerken. De netwerken die met GNUnet worden gecreƫerd hebben geen enkele foutpunt en kunnen de privacy van gebruikers garanderen, inclusief het uitsluiten van mogelijke misbruik door inlichtingendiensten en beheerders die toegang hebben tot knooppunten van het netwerk. De release is gemarkeerd als zijnde significant veranderd in de protocollen, wat de achterwaartse compatibiliteit met versies 0.12.x verstoort.
GNUnet ondersteunt het creƫren van P2P-netwerken bovenop TCP, UDP, HTTP/HTTPS, Bluetooth en WLAN, en kan werken in de F2F-modus (Friend-to-friend). NAT-bypassing wordt ondersteund, inclusief het gebruik van UPnP en ICMP. Voor het adresseren van gegevensopslag kan een gedistribueerde hash-tabel (DHT) worden gebruikt. Er zijn middelen voor het implementeren van mesh-netwerken. Voor selectieve verstrekking en intrekking van toegangsrechten wordt de dienst voor gedecentraliseerde uitwisseling van identificatie-attributen gebruikt. , GNS (GNU Name System) en op attributen gebaseerde encryptie ().
Het systeem heeft een laag verbruik van middelen en gebruikt een multi-threaded architectuur voor isolatie tussen componenten. Flexibele middelen voor logging en statistiekverzameling worden aangeboden. Voor de ontwikkeling van eindtoepassingen biedt GNUnet een API voor de C-taal en bindings voor andere programmeertalen. Om de ontwikkeling te vereenvoudigen, wordt aanbevolen om in plaats van threads gebruik te maken van event loops en processen. Onderdeel is een testbibliotheek voor het automatisch implementeren van experimentele netwerken, die tientallen duizenden peers omvat.
Naast GNS zijn er verschillende kant-en-klare applicaties die op GNUnet-technologie zijn gebaseerd:
- Een dienst voor anonieme bestandsdeling, die analyse van informatie voorkomt door gegevens alleen versleuteld te verzenden en die niet toestaat om te volgen wie bestanden heeft geüpload, gezocht en gedownload dankzij het GAP-protocol.
- Een VPN-systeem voor het creƫren van verborgen diensten in de '.gnu'-domein en het tunnelen van IPv4 en IPv6 over een P2P-netwerk. Bovendien worden de IPv4-naar-IPv6 en IPv6-naar-IPv4 vertalingsschema's ondersteund, evenals het creƫren van tunnels IPv4-over-IPv6 en IPv6-over-IPv4.
- De GNUnet Conversation-service voor het maken van spraakoproepen via GNUnet. Voor de identificatie van gebruikers wordt GNS gebruikt, en de inhoud van de spraakverkeer wordt versleuteld doorgestuurd. Anonimiteit wordt momenteel niet geboden ā andere peers kunnen de verbinding tussen twee gebruikers volgen en hun IP-adressen bepalen.
- Platform voor het creƫren van gedecentraliseerde sociale netwerken , die het protocol gebruikt en de verspreiding van meldingen in multicast-modus ondersteunt met behulp van end-to-end encryptie, zodat alleen geautoriseerde gebruikers (degenen voor wie de berichten niet zijn bedoeld, inclusief knooppuntbeheerders, kunnen ze niet lezen) toegang hebben tot berichten, bestanden, chats en discussies.
- Systeem voor het organiseren van versleutelde e-mail , dat GNUnet toepast voor het beschermen van metadata en verschillende ondersteunt voor sleutelverificatie;
- Betaalsysteem , dat anonimiteit biedt voor kopers, maar transacties van verkopers bijhoudt om transparantie en belastingrapportage te waarborgen. Het ondersteunt betalingen in verschillende bestaande valuta's en elektronische valuta's, waaronder dollars, euro's en bitcoins.
Belangrijkste innovaties in GNUnet 0.13:
- In gebruik genomen register (GNUnet Assigned Numbers Authority), verantwoordelijk voor het toewijzen van namen en adressen voor GNUnet.
- De implementatie van het gedecentraliseerde domeinnaamsysteem GNS is afgestemd op , voorgesteld door de IETF. De werking van de NSS-plugin 'block' is opgezet. Nieuwe SUPPLEMENTAL-vlaggen zijn toegevoegd voor records die niet expliciet zijn gepubliceerd onder de opgegeven label, maar die door de resolver worden geretourneerd. De utility gnunet-namestore geeft nu een waarschuwing bij het toevoegen van TLSA- of SRV-records buiten de record .
- In het mechanisme voor het intrekken van sleutels (GNS/REVOCATION) is de functie overgeschakeld naar het gebruik van het hash-algoritme Argon2.
- In de dienst voor gedecentraliseerde uitwisseling van identificatie-attributen (RECLAIM) is de ticketgrootte vergroot tot 256 bits.
- De transportplugin, die het UDP-protocol voor gegevensoverdracht gebruikt, is vanwege stabiliteitsproblemen naar de categorie experimenteel verplaatst;
- Het sleutelbestandsformaat en de methode voor het serialiseren van ECDSA-private sleutels zijn genormaliseerd met andere bibliotheken (oude sleutels zullen niet meer werken).
- Voor de implementatie van cryptografie-algoritmen op basis van elliptische krommen is gebruik gemaakt van de bibliotheek .
- De mogelijkheid om utilities met een niet-gnutls-gebonden cURL-bibliotheek te bouwen is toegevoegd.
- De continue integratieserver is teruggebracht .
- De bouwafhankelijkheden omvatten de bibliotheken libmicrohttpd, libjansson en libsodium.
Bron: opennet.ru
