Release fan ZeroNet 0.7, in platfoarm foar it meitsjen fan desintralisearre websiden

Nei in jier fan ûntwikkeling waard de frijlitting fan in desintralisearre webplatfoarm frijlitten ZeroNet 0.7, dy't foarstelt it brûken fan Bitcoin's adres- en ferifikaasjemeganismen yn kombinaasje mei BitTorrent's ferdielde leveringstechnologyen om siden te meitsjen dy't net sensurearre, ferfalske of blokkearre wurde kinne. De ynhâld fan siden wurdt opslein yn in P2P-netwurk op masines fan besikers en wurdt ferifiearre mei de digitale hantekening fan de eigner. In systeem fan alternative root-DNS-tsjinners wurdt brûkt foar adressen Namecoin. It projekt is skreaun yn Python en ferspraat troch lisinsje ûnder GPLv2.

De gegevens pleatst op 'e side wurde ferifiearre en keppele oan it akkount fan' e side-eigner, fergelykber mei de keppeling fan Bitcoin-slúven, dy't it ek mooglik makket om de relevânsje fan ynformaasje te kontrolearjen en ynhâld yn echt te aktualisearjen. Om IP-adressen te ferbergjen, kin it anonime Tor-netwurk brûkt wurde, wêrfoar stipe is ynboud yn ZeroNet. De brûker docht mei oan de distribúsje fan alle siden dy't hy tagong hat. Ienris ynladen nei it lokale systeem, wurde de bestannen yn it cache bewarre en beskikber steld foar distribúsje fan 'e hjoeddeistige masine mei metoaden dy't tinke oan BitTorrent.

Om ZeroNet-siden te besjen, útfiere gewoan it zeronet.py-skript, wêrnei't jo siden yn 'e browser kinne iepenje fia de URL "http://127.0.0.1:43110/zeronet_address" (bygelyks "http://127.0.0.1) :43110/1HeLLo4uzjaLetFx6NMN3PMwF5qbebTf1D") . By it iepenjen fan in webside fynt it programma peers yn 'e buert en downloadt bestannen ferbûn mei de frege side (html, css, ôfbyldings, ensfh.).
Om jo side te meitsjen, útfiere gewoan it kommando "zeronet.py siteCreate", wêrnei't in side-identifikaasje en in privee kaai sil wurde generearre om auteurskip te befêstigjen mei in digitale hantekening.

Foar de oanmakke side sil in lege map makke wurde fan it formulier "data/1HeLLo4usjaLetFx6NMH5PMwF3qbebTf1D". Nei it feroarjen fan de ynhâld fan dizze map, moat de nije ferzje sertifisearre wurde mei it kommando "zeronet.py siteSign site_identifier" en it ynfieren fan de privee kaai. Sadree't de nije ynhâld is ferifiearre, moat it oankundige wurde mei it kommando "zeronet.py sitePublish site_id" sadat de feroare ferzje beskikber wurdt foar peers (de WebSocket API wurdt brûkt om feroarings oan te kundigjen). Lâns de keten sille peers de yntegriteit fan 'e nije ferzje kontrolearje mei in digitale hantekening, de nije ynhâld downloade en it oerdrage oan oare peers.

haad kânsen:

  • D'r is gjin inkeld punt fan mislearring - de side bliuwt tagonklik as d'r op syn minst ien peer yn 'e distribúsje is;
  • Gebrek oan referinsje opslach foar de side - de side kin net sluten wurde troch it losmeitsjen fan hosting, om't de gegevens op alle masines fan besikers lizze;
  • Alle earder besjoen ynformaasje is yn 'e cache en is tagonklik fan' e hjoeddeistige masine yn offline modus, sûnder tagong ta it globale netwurk.
  • Stypje real-time ynhâld update;
  • Mooglikheid om te adressearjen fia domeinregistraasje yn 'e ".bit"-sône;
  • Wurkje sûnder foarriedige opset - pak it argyf gewoan út mei de software en fier ien skript;
  • Mooglikheid om websiden yn ien klik te klonen;
  • Opmaak-basearre wachtwurdleaze autentikaasje BIP 32: it akkount wurdt beskerme troch deselde kryptografyske metoade as de Bitcoin-kryptofaluta;
  • Ynboude SQL-tsjinner mei P2P-datasyngronisaasjefunksjes;
  • De mooglikheid om Tor te brûken foar anonymiteit en folsleine stipe foar it brûken fan Tor ferburgen tsjinsten (.onion) ynstee fan IPv4-adressen;
  • TLS fersifering stipe;
  • Automatyske tagonklikens fia uPnP;
  • Mooglikheid om ferskate auteurs mei ferskate digitale hantekeningen oan 'e side te heakjen;
  • Beskikberens fan in plugin foar it meitsjen fan multi-brûker konfiguraasjes (openproxy);
  • Stipe foar it útstjoeren fan nijsfeeds;
  • Wurket yn alle browsers en bestjoeringssystemen.

Grutte feroaringen yn ZeroNet 0.7

  • De koade is opnij bewurke om Python3 te stypjen, en soarget foar kompatibiliteit mei Python 3.4-3.8;
  • In beskerme databank syngronisaasje modus is ymplemintearre;
  • Wêr't it mooglik is, is de haadferdieling fan bibleteken fan tredden beëinige yn it foardiel fan eksterne ôfhinklikens;
  • De koade foar it ferifiearjen fan digitale hantekeningen is 5-10 kear fersneld (de libsecp256k1-bibleteek wurdt brûkt;
  • Added randomization fan al oanmakke sertifikaten te bypass filters;
  • De P2P-koade is bywurke om it ZeroNet-protokol te brûken;
  • Offline modus tafoege;
  • UiPluginManager plugin tafoege foar it ynstallearjen en behearen fan plugins fan tredden;
  • Folsleine stipe foar OpenSSL 1.1 wurdt levere;
  • By it ferbinen mei peers, wurde dummy SNI- en ALPN-records brûkt om ferbiningen mear te fergelykjen mei oproppen nei reguliere siden oer HTTPS;

Deselde dei as ZeroNet 0.7.0 release foarme update 0.7.1, dy't elimineert in gefaarlike kwetsberens dy't mooglik makket koade útfiering oan de kliïnt kant. Troch in flater yn 'e koade foar it werjaan fan sjabloanfariabelen, kin in iepen eksterne side in ferbining meitsje mei it kliïntsysteem fia WebSocket mei ûnbeheinde ADMIN / NOSANDBOX-rjochten, wat it mooglik makket om konfiguraasjeparameters te feroarjen en syn koade út te fieren op 'e kompjûter fan 'e brûker fia manipulaasjes mei de parameter open_browser.
De kwetsberens ferskynt yn branch 0.7, lykas ek yn eksperimintele builds fanôf de revyzje 4188 (feroaring makke 20 dagen lyn).

Boarne: opennet.ru

Add a comment