Esitatud GNUnet 0.20 raamistik, mis on loodud kaitstud detsentraliseeritud P2P-võrkude loomiseks. GNUnet'i abil loodud võrgud ei oma ühte punktiga, mille kaudu tõrkuda, ja suudavad tagada kasutajate isikuandmete puutumatuse, sealhulgas välistada võimalikke kuritarvitamisi ametkondade ja administraatorite poolt, kellel on juurdepääs võrgu sõlmedele.
GNUnet toetab P2P-võrkude loomist TCP, UDP, HTTP/HTTPS, Bluetooth ja WLAN üle, suudab töötada F2F (sõbralt sõbrale) režiimis. Toetatakse NAT-i ümbersuunamist, sealhulgas UPnP ja ICMP kasutamisega. Andmete paigutuse adresseerimiseks on võimalik kasutada jaotatud räsi tabelit (DHT). Pakutakse vahendeid mesh-võrkude rakendamiseks. Juhtimiseks, andmete jagamise ja juurdepääsu õiguste tagasivõtmiseks kasutatakse detsentraliseeritud identifitseerimise atribuutide vahetuse teenust reclaimID, mis kasutab GNS-i (GNU nime süsteem) ja atribuutide põhist krüptimist.
Süsteem paistab silma madala ressursikasutuse ja mitme protsessi arhitektuuri rakendamisega, et tagada komponentide vaheline isolatsioon. Pakutakse paindlikke logimise ja statistika kogumise vahendeid. GNUnet pakub lõppkasutuste arendamiseks C keele API-d ja sidemeid teiste programmeerimiskeelte jaoks. Arenduse lihtsustamiseks soovitatakse voogude asemel kasutada sündmuste töötlemise tsükleid ja protsesse. Kompaktne testibiblioteek eksperimentaalsete võrkude automaatseks seadistamiseks, mis katab kümneid tuhandeid peer'e.
GNUnet'i tehnoloogiate baasil areneb mitmeid valmisrakendusi:
- GNS (GNU Name System) on domeenide süsteem, mis toimib täielikult detsentraliseeritud ja tsensuuri suhtes vastupanuvõimelisena DNS-i asendajana. GNS-i saab kasutada koos DNS-iga ja traditsioonilistes rakendustes, nagu veebibrauserid. Erinevalt DNS-ist kasutab GNS puu struktuuri asemel suunatud graafi. Nime muutmine on sarnane DNS-ile, kuid päringud ja vastused tehakse privaatsust säilitades — päringu töötlev sõlm ei tea, kellele vastust antakse, ning edastusõlmed ja kolmandad osalised ei suuda päringuid ja vastuseid dešifreerida. Andmete terviklikkust ja muutumatust tagavad krüptograafilised mehhanismid. GNS-i DNS-tsoon määratletakse ECDSA avatud ja suletud võtme paariga, mis põhineb Curve25519 elliptilistel kõveratel.
- Teenuse, mis võimaldab anonüümset failide vahetust, ei võimalda teabe analüüsimist, kuna andmeid edastatakse ainult krüpteeritud kujul ning ei võimalda jälgida, kes faile üles laadis, otsis ja allalaadis, tänu GAP protokolli kasutamisele.
- Süsteem VPN peidetud teenuste loomiseks domeenis " .gnu " ja IPv4 ja IPv6 tunnelite edastamiseks P2P-võrgu kohal. Lisatöötlusi toetatakse IPv4-IPv6 ja IPv6-IPv4 tõlkimise skeemide, samuti IPv4 tunneli loomisel IPv6 kohal ja IPv6 tunneli loomisel IPv4 kohal.
- GNUnet Conversation teenus häälkõnede tegemiseks GNUnet-i kohal. Kasutajate tuvastamiseks kasutatakse GNS-i, häältrafiku sisu edastatakse krüpteeritud kujul. Anonüümsus pole veel tagatud — teised peerid võivad jälgida ühendust kahe kasutaja vahel ja nende tuvastada. IP-aadressid.
- Detsentraliseeritud sotsiaalsete võrgustike ehitamise platvorm Secushare, mis kasutab PSYC protokolli ja toetab mitme saatmise režiimis teadete levitamist, rakendades lõpp-lõpuni krüpteerimist, et ainult autentitud kasutajad (need, kellele sõnumid pole adresseeritud, sealhulgas sõlmede administraatorid, ei saa neid lugeda) pääseksid sõnumitele, failidele, vestlustele ja aruteludele ligi;
- Süsteem krüpteeritud e-posti korraldamiseks pretty Easy privacy, mis rakendab GNUnet-it metaandmete kaitseks ja toetab erinevaid krüptograafilisi protokolle võtmete valideerimiseks;
- GNU Taler on maksesüsteem, mis tagab ostjatele anonüümsuse, kuid jälgib müüjate tehinguid läbipaistvuse ja maksuaruandluse tagamiseks. Toetatakse erinevate olemasolevate valuutade ja elektrooniliste rahadega töötamist, sealhulgas dollarite, eurode ja bitcoinidega.
- GNUnet Messenger teenus mõeldud kaitstud vestluste rakenduste loomiseks. Privaatsuse tagamiseks ja sõnumite pealtkuulamise kaitsmiseks kasutatakse CADET protokolli (Confidential Ad-hoc Decentralized End-to-End Transport), mis võimaldab luua täielikult detsentraliseeritud suhtluse kasutajate rühma vahel, rakendades edastatavate andmete lõpp-punkti krüpteerimist.
Uues GNUnet versioonis on tehtud muudatusi, mis rikuvad protokolli ühilduvust ning võivad tekitada probleeme GNUnet 0.20 ja varasemate versioonide vaheliste sõlmede koostöös. Raamatukokku libgnuneutil on üle viidud funktsioonid GNUNET_STRINGS_get_suffix_from_binary_name ja GNUNET_s. Lisatud funktsioonid GNUNET_JSON_spec_object_const, GNUNET_JSON_spec_array_const, GNUNET_PQ_get_oid_by_name ja GNUNET_PQ_get_oid. Lisatud KEM (Key Encapsulation Mechanism) API.
Allikas: opennet.ru
