ZeroNet 0.7 kiadás, a decentralizált weboldalak létrehozására szolgáló platform

A fejlesztés egy éve után megjelent a decentralizált webplatform ZeroNet 0.7, amely a Bitcoin címezési és hitelesítési mechanizmusait ötvözi a BitTorrent elosztott szállítási technológiáival, hogy olyan weboldalakat hozzon létre, amelyeket nem lehet cenzúrázni, hamisítani vagy blokkolni. A weboldalak tartalmát P2P-hálózatban tárolják a látogatók gépén, és a tulajdonos digitális aláírásával ellenőrzik. Az alternatív gyökér DNS-szerverek rendszere biztosítja a címzést Namecoin. A projekt Python nyelven íródott, és terjesztésre kerül GPLv2 licenc alatt.

A weboldalon elhelyezett adatok hitelesítve vannak, és a weboldal tulajdonosához hasonlóan a Bitcoin tárcákhoz is kapcsolódnak, ami lehetővé teszi az információk aktualitásának ellenőrzését és a tartalom valós idejű frissítését. Az IP-címek elrejtéséhez a Tor névtelen hálózatra lehet támaszkodni, amelynek támogatása beépített a ZeroNet-be. A felhasználó részt vesz minden olyan weboldal megosztásában, amelyre rákattintott. Miután a fájlok letöltődtek a helyi rendszerre, a gyorsítótárban tárolódnak, és elérhetővé válnak a megosztásra az aktuális gépről, BitTorrent-szerű módszerekkel.

A ZeroNet weboldalak megtekintéséhez elegendő elindítani a zeronet.py szkriptet, majd a böngészőben a weboldalakat az „http://127.0.0.1:43110/zeronet_cím” URL-en keresztül megnyitni (például „http://127.0.0.1:43110/1HeLLo4uzjaLetFx6NMN3PMwF5qbebTf1D”). A weboldal megnyitásakor a program megtalálja a legközelebbi peerszámlálókat, és letölti a kéréshez kapcsolódó fájlokat (html, css, képek, stb.).
A saját weboldal létrehozásához elegendő kiadni a „zeronet.py siteCreate” parancsot, amely után egy weboldalazonosító és egy privát kulcs kerül generálásra a digitális aláírás hitelesítéséhez.

A létrehozott weboldal számára üres könyvtár jön létre a következő formátumban: „data/1HeLLo4usjaLetFx6NMH5PMwF3qbebTf1D”. Miután módosították ennek a könyvtárnak a tartalmát, az új verzió hitelesítése szükséges a „zeronet.py siteSign weboldal_azonosító” parancs kiadásával és a privát kulcs megadásával. Amint az új tartalmat hitelesítik, azt be kell jelenteni a „zeronet.py sitePublish weboldal_azonosító” paranccsal, hogy a módosított változat a peerszámítógépek számára elérhető legyen (a változások bejelentéséhez WebSocket API-t használnak). A peerszámítógépek láncolatán ellenőrzik az új verzió integritását digitális aláírás alapján, letöltik az új tartalmat és továbbítják más peerszámítógépeknek.

Fő lehetőségek:

  • Nincs egyetlen hibapont - a weboldal elérhető marad, ha a megosztásban legalább egy peer elérhető;
  • Nincs referencia tároló a weboldalhoz - a weboldalt nem lehet leállítani a hosztolás kikapcsolásával, mivel az adatok a látogatók gépein vannak elhelyezve;
  • Minden korábban megtekintett információ elérhető a gyorsítótárban és offline módban, a globális hálózat elérése nélkül is hozzáférhető a jelenlegi gépről.
  • Támogatás a tartalom valós idejű frissítéséhez;
  • Lehetőség domain regisztrációra a ".bit" zónában;
  • Működés előzetes beállítás nélkül - elegendő, ha kicsomagolja a szoftver archívumot és futtat egy szkriptet;
  • Weboldalak egy kattintással való klónozása;
  • Jelszó nélküli azonosítás a BIP32: a fiók ugyanazzal a kriptográfiai módszerrel van védve, mint a Bitcoin kriptovaluta;
  • Beépített SQL szerver P2P adat-szinkronizálási funkciókkal;
  • Tor használatának lehetősége anonimitás céljából, és teljes támogatás a Tor rejtett szolgáltatások (.onion) IPv4-címek helyett történő használatára;
  • TLS titkosítás támogatója;
  • Automatikus elérhetőség uPnP-n keresztül;
  • Lehetőség több szerző hozzácsatlakozására a weboldalhoz, eltérő digitális aláírásokkal;
  • Plugin elérhetősége több felhasználós konfigurációk létrehozásához (openproxy);
  • Hírcsatornák továbbításának támogatása;
  • Működés bármely böngészőben és operációs rendszeren.

Főbb változások a ZeroNet 0.7-ben

  • A kód át lett dolgozva a Python3 támogatásához, biztosítva a Python 3.4-3.8 kompatibilitását;
  • Megvalósították az adatbázis szinkronizálásának biztonságos módját;
  • Ha lehetséges, a harmadik fél könyvtárak fő összetételből való kiszállítását megszüntették a külső függőségek javára;
  • A digitális aláírások ellenőrzésére szolgáló kód 5-10-szer gyorsabbá vált (a libsecp256k1 könyvtár használatával);
  • Korábban generált tanúsítványok véletlenszerűsítésének hozzáadása a szűrők megkerülésére;
  • A P2P kódfrissítés a ZeroNet protokoll használatára vált;
  • Offline működési mód hozzáadása;
  • UiPluginManager plugin hozzáadása harmadik féltől származó pluginek telepítésére és kezelésére;
  • Teljes OpenSSL 1.1 támogatás biztosítása;
  • A peer-ekhez való csatlakozás során SNI és ALPN hamis nyilvántartásokat használnak, hogy a kapcsolatok hasonlósága nőjön a hagyományos HTTPS weboldalak megkereséseihez;

Ugyanazon a napon, mint a ZeroNet 0.7.0 kiadása formálva 0.7.1-es frissítés, amelyben egy veszélyes sebezhetőséget javítottak ki, amely potenciálisan lehetővé teszi a kliensoldali kódvégrehajtást. A sablonváltozók renderelésének kódjában lévő hiba miatt egy külső nyílt weboldal kapcsolatot létesíthet a kliens rendszerével WebSocket-en keresztül korlátlan ADMIN/NOSANDBOX engedélyekkel, ami lehetőséget ad a konfigurációs paraméterek módosítására és saját kódjuk végrehajtására a felhasználó számítógépén az open_browser paraméter manipulálásával.
A sebezhetőség a 0.7-es ágba, valamint a kísérleti kiadásokba is megjelenik a revíziótól kezdődően. 4188 (változtatás 20 napja történt).

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster