Izdaja platforme GNUnet P2P 0.13. Spodbujanje GNS kot internetnega standarda

IETF (Internet Engineering Task Force), ki razvija internetne protokole in arhitekturo, je začel proces standardizacije sistema domenskih imen GNS (GNU Name System), ki ga je razvil projekt GNUnet kot popolnoma decentralizirana in cenzurno varna zamenjava za DNS. Trenutno objavljeno prvi osnutek standarda, po stabilizaciji katerega bo oblikovan RFC, ki bo imel status “Predlagani standard”.

GPS se lahko uporablja skupaj z DNS in uporablja v tradicionalnih aplikacijah, kot so spletni brskalniki. Celovitost in nespremenljivost zapisov je zagotovljena z uporabo kriptografskih mehanizmov. Za razliko od DNS uporablja GNS usmerjen graf namesto drevesne hierarhije strežnikov. Razrešitev imen je podobna DNS, vendar so zahteve in odgovori podani na zaupen način – vozlišče, ki obdeluje zahtevo, ne ve, komu je bil odgovor poslan, tranzitna vozlišča in opazovalci tretjih oseb pa ne morejo dešifrirati zahtev in odgovorov.

Območje DNS v GNS je določeno z uporabo množice javnih in zasebnih ključev ECDSA na podlagi eliptičnih krivulj Curve25519. Uporaba Curve25519 zaznano nekateri menijo, da je to zelo nenavaden korak, saj za ECDSA uporabljajo druge vrste eliptičnih krivulj, v kombinaciji s Curve25519 pa običajno uporabljajo algoritem digitalnega podpisa Ed25519, bolj moderno, varnejši in hitrejši od ECDSA. Z vidika kriptografske trdnosti je vprašljiva tudi izbira velikosti ključa - 32 bajtov namesto 64 bajtov, ki se običajno uporablja za Ed25519, ter uporaba kaskada simetrično šifriranje z uporabo algoritmov AES in TwoFish v načinu CFB.

Ta pristop je razložen s potrebo po implementaciji hierarhičnih ključev, ki omogočajo uporabo korenskega javnega ključa za ekstrahiranje podrejenega javnega ključa, pri čemer se izkorišča lastnost linearnosti Curve25519. Ta funkcija vam omogoča, da pridobite podrejene javne ključe, ne da bi poznali zasebne korenske ključe. Ta tehnika je tudi velja v bitcoinih. 32-bajtna velikost ključa je bila izbrana tako, da omogoča, da se ključ prilega enemu zapisu DNS.

Poleg tega je mogoče opozoriti nova številka ogrodje GNUnet 0.13, zasnovan za gradnjo varnih decentraliziranih omrežij P2P. Omrežja, ustvarjena z GNUnetom, nimajo niti ene točke napake in so sposobna zagotoviti nedotakljivost zasebnih informacij uporabnikov, vključno z odpravo morebitnih zlorab s strani obveščevalnih služb in skrbnikov z dostopom do omrežnih vozlišč. Izdaja je označena, da vsebuje pomembne spremembe protokola, ki motijo ​​združljivost nazaj z različicami 0.12.x.

GNUnet podpira ustvarjanje omrežij P2P prek TCP, UDP, HTTP/HTTPS, Bluetooth in WLAN ter lahko deluje v načinu F2F (Friend-to-friend). Podprto je prečkanje NAT, vključno z uporabo UPnP in ICMP. Za obravnavanje umestitve podatkov je mogoče uporabiti porazdeljeno zgoščeno tabelo (DHT). Na voljo so orodja za postavitev mrežnih omrežij. Za selektivno podeljevanje in preklic pravic dostopa se uporablja decentralizirana storitev izmenjave identifikacijskih atributov povrni ID, uporabo GNS (GNU Name System) in šifriranje na osnovi atributov (Šifriranje na osnovi atributov).

Sistem ima nizko porabo virov in uporablja večprocesno arhitekturo za zagotavljanje izolacije med komponentami. Na voljo so prilagodljiva orodja za vzdrževanje dnevnikov in zbiranje statistike. Za razvoj aplikacij za končno uporabo GNUnet nudi API za jezik C in vezave za druge programske jezike. Za poenostavitev razvoja je predlagana uporaba zank in procesov dogodkov namesto niti. Vključuje testno knjižnico za samodejno uvajanje eksperimentalnih omrežij, ki pokrivajo več deset tisoč vrstnikov.

Poleg GNS se razvija tudi več že pripravljenih aplikacij, ki temeljijo na tehnologijah GNUnet:

  • Storitev za anonimno deljenje datotek, ki zaradi uporabe protokola GAP ne omogoča analize informacij zaradi prenosa podatkov le v šifrirani obliki in ne omogoča sledenja kdo je objavljal, iskal in prenašal datoteke.
  • VPN sistem za ustvarjanje skritih storitev v domeni “.gnu” in posredovanje tunelov IPv4 in IPv6 preko omrežja P2P. Poleg tega so podprte sheme prevajanja IPv4-na-IPv6 in IPv6-na-IPv4 ter ustvarjanje tunelov IPv4-na-IPv6 in IPv6-na-IPv4.
  • Pogovorna storitev GNUnet za glasovne klice prek GNUnet. GNS se uporablja za identifikacijo uporabnikov, vsebina govornega prometa se prenaša v šifrirani obliki. Anonimnost še ni zagotovljena - drugi vrstniki lahko sledijo povezavi med dvema uporabnikoma in določijo njuna naslova IP.
  • Platforma za gradnjo decentraliziranih družbenih omrežij Secushare, z uporabo protokola PSYC in podpiranje distribucije obvestil v načinu multicast z uporabo šifriranja od konca do konca, tako da lahko samo pooblaščeni uporabniki dostopajo do sporočil, datotek, klepetov in razprav (tisti, ki jim sporočila niso naslovljena, vključno s skrbniki vozlišč, jih ne bodo mogli prebrati );
  • Sistem za organiziranje šifrirane elektronske pošte precej preprosta zasebnost, ki uporablja GNUnet za zaščito metapodatkov in podpira različne kriptografski protokoli za preverjanje ključa;
  • Plačilni sistem Delavnica GNU, ki kupcem zagotavlja anonimnost, vendar sledi transakcijam prodajalcev zaradi preglednosti in poročanja o davkih. Podpira delo z različnimi obstoječimi valutami in elektronskim denarjem, vključno z dolarji, evri in bitcoini.

Glavne nove funkcije v GNUnet 0.13:

  • Register je začel delovati GANA (GNUnet Assigned Numbers Authority), odgovoren za dodeljevanje imen in naslovov za GNUnet.
  • Implementacija decentraliziranega domenskega sistema GNS je usklajena z specifikacija, ki ga je predlagal IETF. »Blok« vtičnika NSS je bil izboljšan. Dodane nove DODATNE zastavice za zapise, ki niso izrecno objavljeni pod dano oznako, ampak jih vrne razreševalec. Pripomočku gnunet-namestore dodano opozorilo pri dodajanju vnosov TLSA ali SRV zunaj vnosa BOX.
  • V mehanizmu za preklic ključa (GNS/REVOCATION) funkcija dokazilo o opravljenem delu preklopil na uporabo algoritma zgoščevanja Argon2.
  • V storitvi decentralizirane izmenjave identifikacijskih atributov (RECLAIM) je velikost vstopnice povečana na 256 bitov.
  • Transportni vtičnik, ki za prenos podatkov uporablja protokol UDP, je bil zaradi težav s stabilnostjo premaknjen v eksperimentalno kategorijo;
  • Format datoteke ključa ECDSA in metoda serializacije zasebnega ključa sta poenotena z drugimi knjižnicami (stari ključi ne bodo več delovali).
  • Knjižnica se uporablja kot implementacija šifrirnih algoritmov, ki temeljijo na eliptičnih krivuljah libodij.
  • Dodana možnost gradnje pripomočkov s knjižnico cURL, ki ni povezana z gnutls.
  • Vrnjen strežnik za neprekinjeno integracijo Buildbot.
  • Odvisnosti gradnje vključujejo libmicrohttpd, libjansson in libsodium.

Vir: opennet.ru

Dodaj komentar