De release van het GNUnet 0.20-framework is gepresenteerd, dat is ontworpen voor het opzetten van beveiligde gedecentraliseerde P2P-netwerken. Netwerken die met GNUnet worden gemaakt, hebben geen enkelvoudig punt van falen en kunnen de privacy van gebruikers waarborgen, inclusief het uitsluiten van mogelijke misbruik door inlichtingendiensten en beheerders met toegang tot netwerknodes.
GNUnet ondersteunt het opzetten van P2P-netwerken bovenop TCP, UDP, HTTP/HTTPS, Bluetooth en WLAN, en kan werken in een F2F (Friend-to-friend) modus. NAT-omzeiling wordt ondersteund, inclusief gebruik van UPnP en ICMP. Voor het adresseren van gegevensopslag kan een gedistribueerde hash-tabel (DHT) worden gebruikt. Er zijn middelen beschikbaar voor het implementeren van mesh-netwerken. Voor selectief delen en intrekken van toegangsrechten wordt de dienst van gedecentraliseerde attributenuitwisseling reclaimID gebruikt, die GNS (GNU Name System) en op attributen gebaseerde encryptie (Attribute-Based Encryption) toepast.
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.
Op basis van GNUnet-technologieƫn worden verschillende kant-en-klare applicaties ontwikkeld:
- Het GNS (GNU Name System) is een systeem voor domeinnamen dat fungeert als een volledig gedecentraliseerd en censuurproof alternatief voor DNS. GNS kan naast DNS worden gebruikt en is toepasbaar in traditionele applicaties, zoals webbrowser. In tegenstelling tot DNS maakt GNS gebruik van een gerichte graaf in plaats van een hiĆ«rarchische structuur van servers. De naamomzetting is vergelijkbaar met DNS, maar de verzoeken en antwoorden worden uitgevoerd met behoud van privacy ā de knoop die de aanvraag verwerkt, weet niet aan wie het antwoord wordt gegeven, en transitknopen en externe waarnemers kunnen de verzoeken en antwoorden niet ontsleutelen. De integriteit en onveranderlijkheid van de records worden gewaarborgd door cryptografische mechanismen. Een DNS-zone in GNS wordt gedefinieerd met behulp van een koppeling van publieke en privĆ©-sleutels ECDSA gebaseerd op de elliptische krommen Curve25519.
- Een service voor anonieme bestandsuitwisseling die het onmogelijk maakt om informatie te analyseren, doordat gegevens uitsluitend versleuteld worden verzonden en het niet mogelijk is om te achterhalen wie bestanden heeft geüpload, gezocht of gedownload, dankzij het gebruik van het GAP-protocol.
- Systeem VPN voor het opzetten van verborgen diensten in het domein '.gnu' en het tunnelen van IPv4 en IPv6 over een P2P-netwerk. Bovendien worden vertaalmethoden van IPv4 naar IPv6 en van IPv6 naar IPv4 ondersteund, evenals het creƫren van tunnels van IPv4 over IPv6 en van IPv6 over IPv4.
- De GNUnet Conversation-service voor het voeren van spraakoproepen over GNUnet. GNS wordt gebruikt voor de identificatie van gebruikers, en de inhoud van het spraakverkeer wordt versleuteld verzonden. Anonimiteit wordt momenteel nog niet geboden ā andere peers kunnen de verbinding tussen twee gebruikers volgen en deze identificeren. IP-adressen.
- Een platform voor het bouwen van gedecentraliseerde sociale netwerken, Secushare, dat het PSYC-protocol gebruikt en de verspreiding van meldingen in multicast-modus ondersteunt met end-to-end encryptie, zodat alleen geauthenticeerde gebruikers toegang hebben tot berichten, bestanden, chats en discussies (degenen aan wie de berichten niet zijn gericht, inclusief node-beheerders, kunnen ze niet lezen);
- Een systeem voor het organiseren van versleutelde e-mail, pretty Easy privacy, dat GNUnet gebruikt ter bescherming van metadata en verschillende cryptografische protocollen ondersteunt voor sleutelverificatie;
- Het betalingsysteem GNU Taler biedt anonimiteit voor kopers, maar volgt de transacties van verkopers voor transparantie en belastingrapportage. Ondersteunt de omgang met verschillende bestaande valuta's en elektronische geldmiddelen, waaronder dollars, euro's en bitcoins.
- De GNUnet Messenger-service voor het creƫren van veilige chattoepassingen. Om privacy en bescherming tegen afluisteren van berichten te waarborgen, wordt het CADET-protocol (Confidential Ad-hoc Decentralized End-to-End Transport) toegepast, waarmee volledig gedecentraliseerde interactie tussen een groep gebruikers met end-to-end encryptie van gegevens mogelijk is.
In de nieuwe versie van GNUnet zijn er wijzigingen aangebracht die de protocolcompatibiliteit verstoren en mogelijke problemen veroorzaken bij de interactie tussen knooppunten op basis van GNUnet 0.20 en oudere releases. Functies GNUNET_STRINGS_get_suffix_from_binary_name en GNUNET_s zijn overgebracht naar de bibliotheek libgnuneutil. De functies GNUNET_JSON_spec_object_const, GNUNET_JSON_spec_array_const, GNUNET_PQ_get_oid_by_name en GNUNET_PQ_get_oid zijn toegevoegd. De KEM (Key Encapsulation Mechanism) API is toegevoegd.
Bron: opennet.ru
