ZeroNet 0.7 väljaanne, detsentraliseeritud veebisaitide loomise platvorm

Aasta arendustööd on toonud välja detsentraliseeritud veebiplatvormi ZeroNet 0.7, mis pakub võimalust kasutada Bitcoin'i aadressimis- ja kontrollmehhanisme koos BitTorrenti jaotustehnoloogiatega, et luua veebisaite, mida ei saa tsenseerida, võltsida ega blokeerida. Veebisaitide sisu salvestatakse P2P-võrgus külastajate masinates ja kontrollitakse omaniku digitaalallkirja järgi. Aadressimiseks kasutatakse alternatiivsete juurk DNS-serverite süsteemi Namecoin. Projekt on kirjutatud Python'i keeles ja GNU Üldine Avaliku litsentsi alusel. GPLv2 litsentsi all.

veebisaidil avaldatud andmed on kinnitatud ning seotud saidi omaniku kontoga, sarnaselt Bitcoin'i rahakottide sidumisega, mis võimaldab kontrollida teabe asjakohasust ja uuendada sisu reaalajas. IP-aadresside varjamiseks võib kasutada anonüümset võrguteenust Tor, mille tugi on sisse ehitatud ZeroNeti. Kasutaja osaleb kõigi külastatud veebisaitide jagamises. Pärast kohaliku süsteemi laadimist salvestatakse failid puhverdusse ja need on saadaval jagamiseks hetkel masinal, kasutades meetodeid, mis meenutavad BitTorenti.

ZeroNeti saitide vaatamiseks piisab skripti zeronet.py käivitamisest, pärast mida saab brauseris avada saite URL-i kaudu «http://127.0.0.1:43110/adress_zeronet» (näiteks «http://127.0.0.1:43110/1HeLLo4uzjaLetFx6NMN3PMwF5qbebTf1D»). Kui sait avatakse, leiab programm lähimad peer-id ja laadib alla seotud failid (html, css, pildid jne).
Oma saidi loomiseks piisab käsu «zeronet.py siteCreate» käivitamisest, pärast mida genereeritakse saidi identifikaator ja privaatvõti autoriõiguse kinnitamiseks digitaalse allkirja kaudu.

Loobitud saiti saab vormistada tühjaks kaustaks kujul «data/1HeLLo4usjaLetFx6NMH5PMwF3qbebTf1D». Pärast antud kausta sisu muutmist on vajalik uue versiooni kinnitamine käsu «zeronet.py siteSign identifikaator_saidist» abil ning privaatvõtme sisestamine. Kui uus sisu on kinnitatud, tuleb see välja kuulutada käsu «zeronet.py sitePublish identifikaator_saidist» abil, et muudetud variant saaks eripartnersideni (muudatuste kuulutamiseks kasutatakse API WebSocket). Peer-id kontrollivad uue versiooni terviklikkust digitaalse allkirja kaudu, laadivad uue sisu alla ja edastavad selle teistele peer-id.

Peamised võimalus:

  • Puudumisel ühtsest tõrkepunktist jääb sait kergesti ligipääsetavaks, kui jaotuses on vähemalt üks peer;
  • Puudub standardne veebisaidi salvestamine – saiti ei saa sulgeda, kui hostimine on välja lülitatud, kuna andmed on kõigil külastajate masinatel;
  • Kõik varem vaadatud teave on vahemikus ja saadaval praeguse masina kaudu offline režiimis, ilma globaalsesse võrku sisenemata.
  • Reaalajas sisu värskendamise tugi;
  • Domeeni registreerimise võimalus tsoonis '.bit';
  • Töötamine ilma eelneva seadistamiseta – piisab tarkvara arhivi pakkimisest ja ühe skripti käivitamisest;
  • Veebisaitide kloonimise võimalus ühe klõpsuga;
  • Paroolivaba autentimine vormingu alusel BIP32: konto on kaitstud sama krüptograafilise meetodiga nagu Bitcoin;
  • Sisseehitatud SQL-server P2P-andmete sünkroonimise funktsioonidega;
  • Tor'i kasutamise võimalus anonüümsuseks ja täielik tugi Tor'i peidetud teenuste (.onion) kasutamiseks IPv4-aadresside asemel;
  • TLS-krüptimise tugi;
  • Automaatne kergesti ligipääsetavus läbi uPnP;
  • Võimalus siduda saidiga mitmeid autoreid, kellel on erinevad digitaalsed allkirjad;
  • Mitme kasutaja konfiguratsioonide loomise pistikprogramm (openproxy) on saadaval;
  • Uudistevoogude edastamise tugi;
  • Töö igas brauseris ja operatsioonisüsteemis.

Peamised muudatused ZeroNet 0.7-s

  • Kood on ümber töötatud Python3 toe tagamiseks, tagatud ühilduvus Python 3.4-3.8-ga;
  • Rakendatud kaitstud andmebaasi sünkroniseerimise režiim;
  • Võimalusel on lõpetatud kolmandate osapoolte raamatukogude tarnimine, eelista välist sõltuvust;
  • Kood digitaalallkirjade kinnitamiseks on kiiruselt 5-10 korda kiirem (kasutatakse raamatukogu libsecp256k1);
  • Juba genereeritud sertifikaatide randomiseerimine on lisatud, et kõrvaldada filtrid;
  • Uuendatud P2P kood, mis on ümber kirjutatud ZeroNet protokoli kasutamiseks;
  • Lisatud Offline-režiim;
  • Lisatud UiPluginManager pistikprogramm kolmandate osapoolte pistikprogrammide paigaldamiseks ja haldamiseks;
  • Täielik tugi OpenSSL 1.1-le on tagatud;
  • Peer'idega ühenduse loomisel kasutatakse valesid SNI ja ALPN kirjeid, et muuta ühendust sarnasemaks tavapärastele HTTPS-i veebisaitide pöördumistele;

Sama päeva jooksul, mil ilmus ZeroNet 0.7.0 on loodud väljaanne 0.7.1, kus on kõrvaldatud ohtlik haavatavus, mis võimaldab potentsiaalselt kliendi poolel koodi täitmist. Koodivigade tõttu muutujate mallide joonistamisel võib avatud väline sait luua WebSocketi kaudu ühenduse kliendi süsteemiga piiramatute ADMIN/NOSANDBOX õigustega, mis annab võimaluse muuta konfiguratsiooni parameetreid ja viia läbi oma koodi täitmist kasutaja arvutis, manipuleerides open_browser parameetriga.
Haavatavus ilmneb versioonis 0.7 ning katsetustes alates revisjonist 4188 (muudatus tehti 20 päeva tagasi).

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster