GNUnet P2P platformasining chiqarilishi 0.13. GNSni Internet standarti sifatida targ'ib qilish

Internet protokollari va arxitekturasini ishlab chiquvchi IETF (Internet Engineering Task Force) loyiha tomonidan ishlab chiqilgan GNS (GNU Name System) domen nomlari tizimini standartlashtirish jarayonini boshladi. GNUnet DNS uchun to'liq markazlashtirilmagan va tsenzuradan himoyalangan almashtirish sifatida. Ayni paytda e'lon qilindi standartning birinchi loyihasi, barqarorlashtirgandan so'ng, "Taklif etilayotgan standart" maqomiga ega bo'lgan RFC tuziladi.

GNS DNS bilan yonma-yon ishlatilishi va veb-brauzerlar kabi an'anaviy ilovalarda ishlatilishi mumkin. Yozuvlarning yaxlitligi va o'zgarmasligi kriptografik mexanizmlardan foydalanish orqali ta'minlanadi. DNS-dan farqli o'laroq, GNS serverlarning daraxtga o'xshash ierarxiyasi o'rniga yo'naltirilgan grafikdan foydalanadi. Nomlarni hal qilish DNS ga o'xshaydi, lekin so'rovlar va javoblar maxfiy tarzda amalga oshiriladi - so'rovni qayta ishlovchi tugun javob kimga yuborilayotganini bilmaydi, tranzit tugunlari va uchinchi tomon kuzatuvchilari so'rovlar va javoblarning shifrini ocholmaydi.

GNS-dagi DNS zonasi umumiy va shaxsiy kalitlar to'plami yordamida aniqlanadi ECDSA elliptik egri chiziqlarga asoslanadi Curve25519. Curve25519 dan foydalanish idrok etilgan Ba'zilar buni juda g'alati qadam deb bilishadi, chunki ECDSA uchun ular boshqa turdagi elliptik egri chiziqlardan foydalanadilar va Curve25519 bilan bog'langanda ular odatda raqamli imzo algoritmidan foydalanadilar. Ed25519, zamonaviyroq, ECDSAga qaraganda xavfsizroq va tezroq. Kriptografik quvvat nuqtai nazaridan kalit hajmini tanlash ham shubhali - odatda Ed32 uchun ishlatiladigan 64 bayt o'rniga 25519 bayt, shuningdek foydalanish kaskad CFB rejimida AES va TwoFish algoritmlari yordamida simmetrik shifrlash.

Ushbu yondashuv ierarxik kalitlarni amalga oshirish zarurati bilan izohlanadi, bu esa Curve25519 ning chiziqlilik xususiyatidan foydalanib, asosiy ochiq kalitni ajratib olish uchun asosiy ochiq kalitdan foydalanish imkonini beradi. Bu xususiyat shaxsiy ildiz kalitlarini bilmasdan, bolalar umumiy kalitlarini olish imkonini beradi. Bu texnika ham qo'llaniladi Bitcoin ichida. Kalitning bitta DNS yozuviga sig'ishi uchun 32 baytlik kalit o'lchami tanlangan.

Bundan tashqari, buni ta'kidlash mumkin yangi nashr ramka GNUnet 0.13, xavfsiz markazlashtirilmagan P2P tarmoqlarini qurish uchun mo'ljallangan. GNUnet-dan foydalangan holda yaratilgan tarmoqlar bitta nosozlik nuqtasiga ega emas va foydalanuvchilarning shaxsiy ma'lumotlarining daxlsizligini, shu jumladan razvedka xizmatlari va tarmoq tugunlariga kirish huquqiga ega bo'lgan ma'murlar tomonidan mumkin bo'lgan suiiste'mollikni bartaraf etishni kafolatlashga qodir. Reliz 0.12.x versiyalari bilan orqaga qarab muvofiqlikni buzadigan muhim protokol o'zgarishlarini o'z ichiga olgan deb belgilandi.

GNUnet TCP, UDP, HTTP/HTTPS, Bluetooth va WLAN orqali P2P tarmoqlarini yaratishni qo'llab-quvvatlaydi va F2F (Friend-to-friend) rejimida ishlashi mumkin. UPnP va ICMP-dan foydalanishni o'z ichiga olgan holda NAT traversal qo'llab-quvvatlanadi. Ma'lumotlarni joylashtirish masalasini hal qilish uchun taqsimlangan xesh jadvalidan (DHT) foydalanish mumkin. Mesh tarmoqlarini joylashtirish uchun asboblar taqdim etiladi. Kirish huquqlarini tanlab berish va bekor qilish uchun markazlashtirilmagan identifikatsiya atributlarini almashish xizmatidan foydalaniladi identifikatorni qaytarib olish, foydalanish GNS (GNU nom tizimi) va atributga asoslangan shifrlash (Atributga asoslangan shifrlash).

Tizim kam resurs iste'moliga ega va komponentlar orasidagi izolyatsiyani ta'minlash uchun ko'p jarayonli arxitekturadan foydalanadi. Jurnallarni yuritish va statistik ma'lumotlarni yig'ish uchun moslashuvchan vositalar taqdim etiladi. Yakuniy foydalanish ilovalarini ishlab chiqish uchun GNUnet C tili uchun API va boshqa dasturlash tillari uchun ulanishlarni taqdim etadi. Rivojlanishni soddalashtirish uchun mavzular o'rniga voqealar tsikli va jarayonlaridan foydalanish taklif etiladi. U o'n minglab tengdoshlarni qamrab olgan eksperimental tarmoqlarni avtomatik joylashtirish uchun test kutubxonasini o'z ichiga oladi.

GNS-dan tashqari, GNUnet texnologiyalari asosida bir nechta tayyor ilovalar ham ishlab chiqilmoqda:

  • Ma'lumotlarni faqat shifrlangan shaklda uzatish hisobiga ma'lumotlarni tahlil qilishga imkon bermaydigan va GAP protokolidan foydalanish tufayli fayllarni kim joylashtirgan, qidirgan va yuklab olganligini kuzatish imkonini bermaydigan fayllarni anonim almashish xizmati.
  • ".gnu" domenida yashirin xizmatlarni yaratish va IPv4 va IPv6 tunnellarini P2P tarmog'i orqali yo'naltirish uchun VPN tizimi. Bundan tashqari, IPv4-to-IPv6 va IPv6-to-IPv4 tarjima sxemalari, shuningdek, IPv4-over-IPv6 va IPv6-over-IPv4 tunnellarini yaratish qoʻllab-quvvatlanadi.
  • GNUnet orqali ovozli qo'ng'iroqlarni amalga oshirish uchun GNUnet Conversation xizmati. GNS foydalanuvchilarni identifikatsiyalash uchun ishlatiladi; ovozli trafik mazmuni shifrlangan shaklda uzatiladi. Anonimlik hali ta'minlanmagan - boshqa tengdoshlar ikki foydalanuvchi o'rtasidagi aloqani kuzatishi va ularning IP manzillarini aniqlashi mumkin.
  • Markazlashtirilmagan ijtimoiy tarmoqlarni qurish uchun platforma Secushare, protokol yordamida PSYC va faqat vakolatli foydalanuvchilar xabarlar, fayllar, chatlar va munozaralarga kirishlari uchun (xabarlar yuborilmaganlar, shu jumladan tugun ma'murlari ularni o'qiy olmaydilar) uchdan-end shifrlashdan foydalangan holda multicast rejimida bildirishnomalarni tarqatishni qo'llab-quvvatlash. );
  • Shifrlangan elektron pochtani tashkil qilish tizimi juda oson maxfiylik, metadata himoyasi uchun GNUnet dan foydalanadi va turli xil dasturlarni qo'llab-quvvatlaydi kriptografik protokollar kalitni tekshirish uchun;
  • To'lov tizimi GNU ustaxonasi, bu xaridorlar uchun anonimlikni ta'minlaydi, lekin shaffoflik va soliq hisoboti uchun sotuvchi operatsiyalarini kuzatib boradi. U turli xil mavjud valyutalar va elektron pullar, jumladan, dollar, evro va bitkoinlar bilan ishlashni qo'llab-quvvatlaydi.

GNUnet 0.13 dagi asosiy yangi xususiyatlar:

  • Registr foydalanishga topshirildi WIN (GNUnet Assigned Numbers Authority), GNUnet uchun nomlar va manzillarni tayinlash uchun javobgardir.
  • GNS markazlashtirilmagan domen nomlari tizimini amalga oshirish bilan mos keladi spetsifikatsiya, IETF tomonidan taklif qilingan. NSS plagini "blok" yaxshilandi. Berilgan yorliq ostida aniq nashr etilmagan, lekin hal qiluvchi tomonidan qaytariladigan yozuvlar uchun yangi QO'SHIMCHA bayroqlar qo'shildi. Gnunet-namestore yordam dasturiga kirishdan tashqarida TLSA yoki SRV yozuvlarini qo'shganda ogohlantirish qo'shildi BOX.
  • Kalitni bekor qilish mexanizmida (GNS/REVOCATION), funktsiya bajarilgan ishning isboti Argon2 xesh algoritmidan foydalanishga o'tdi.
  • Identifikatsiya atributlarining markazlashtirilmagan almashinuvi (RECLAIM) xizmatida chipta hajmi 256 bitgacha oshirildi.
  • Ma'lumotlarni uzatish uchun UDP protokolidan foydalanadigan transport plagini barqarorlik muammolari tufayli eksperimental toifaga ko'chirildi;
  • ECDSA kalit fayl formati va shaxsiy kalitni ketma-ketlashtirish usuli boshqa kutubxonalar bilan birlashtirilgan (eski kalitlar endi ishlamaydi).
  • Kutubxona elliptik egri chiziqlarga asoslangan shifrlash algoritmlarini amalga oshirish sifatida ishlatiladi libsodyum.
  • Gnutls bilan bog'liq bo'lmagan cURL kutubxonasi bilan yordamchi dasturlar yaratish imkoniyati qo'shildi.
  • Uzluksiz integratsiya serveri qaytarildi Buildbot.
  • Qurilishga bog'liqliklarga libmicrohttpd, libjansson va libsodium kiradi.

Manba: opennet.ru

a Izoh qo'shish