Hlavní navigace

ZeroNet: decentralizovaný web běžící přes BitTorrent

Roman Bořánek

Žádné centralizované DNS, obsah rozmístěný na řadě nezávislých počítačů. Stránky v ZeroNetu se jen tak shodit nebo cenzurovat nedají. Povedené technologii se však zatím nepodařilo zaujmout dostatek uživatelů.

Svobodný internet potřebuje dvě hlavní ingredience: anonymitu a nemožnost obsah snadno odstranit. Zatímco to první už do jisté míry máme např. díky anonymizační síti Tor, s tím druhým už je trochu problém. Přestože internet pamatuje a data se z něj jen tak neztratí, vypnout samotné servery je pro státní autority poměrně snadné. A umisťování serverů do nedosažitelných zemí není dlouhodobě spolehlivé řešení.

Skutečným řešením může být projekt ZeroNet. Ten vznikl už v roce 2015, ale překvapivě zatím moc pozornosti nezaujal. Ve zkratce jde o web, kde jsou stránky distribuovány přes P2P protokol BitTorrent a existuje tak mnoho kopií na mnoha počítačích.

BitTorrent pro data, “Bitcoin” pro adresy

ZeroNet kombinuje několik technologií. Již zmíněný BitTorrent pro přenos dat, Bitcoin pro identifikaci stránek a autorizaci uživatelů a Namecoin pro domény .bit. Torrentová část je celkem jasná. Uživatelé si mezi sebou zkrátka posílají data stránek, které jsou následně zobrazeny z lokálního úložiště. Jsou zde dvě nevýhody, a to že moderní webové aplikace moc fungovat nebudou, pokud nebudou napsány pro ZeroNet na míru, a že je třeba stáhnout celou stránku – např. kompletní blog se všemi příspěvky. Při změnách už si ale klienti posílají pouze rozdílné soubory, nestahuje se vše znovu.

Spojení s Bitcoinem je takové, že pro založení stránky vygenerujete adresu a k ní příslušný soukromý klíč, který je potřeba k úpravě obsahu stránky. A to právě stejným procesem, kterým se generují bitcoinové adresy. Samotný Bitcoin ale nijak využívat nemusíte, stačí údaje považovat jednoduše za adresu a heslo k ní. Přesto jde také o plně funkční bitcoinovou adresu a uživatelé na ni mohou poslat bitcoiny s tím, že určitě dorazí provozovateli stránky. Zde je ZeroNet sympatický, že se nesnaží znovu vynalézat kolo.

Pro šíření informací o klientech, kteří disponují kopií stránky, se standardně využívají torrentové trackery. Tracker vám sdělí, na jakých IP adresách můžete obsah získat a klient se dá do stahování a zároveň sám začne obsah stránky nabízet (seedovat). Od ostatních seedů potom nejdříve dostanete seznam souborů a jejich hashů podepsaný soukromým klíčem autora stránky. Tak je zajištěno, že vám někdo nepodstrčí jiný obsah. Místo komplikované náhodně generované adresy lze použít také domény pocházející z kryptoměny Namecoin.

ZeroNet: co se děje před samotným přenosem dat

ZeroNet: co se děje před samotným přenosem dat

ZeroNet v praxi: brouzdat zvládne každý

Abyste v síti ZeroNet mohli začít působit, potřebujete samozřejmě klienta, který je v P2P zároveň i serverem. Software je dostupný pod licencí GNU GPLv2 a binárky jsou k dispozici pro Linux, Windows a macOS. Na Linuxu stačí balíček rozbalit a spustit ZeroNet.sh. Nejde o žádného molocha, software se vším všudy zabere jen pár desítek megabajtů, pokud nepočítáme později stažený obsah. Celkem mne potěšilo, že ZeroNet nemá vlastní aplikaci pro procházení obsahu a otevře se jednoduše z localhostu ve vašem oblíbeném prohlížeči.

Uvítá vás přehledná startovací stránka, na které naleznete přehled nejzajímavějších stránek a aplikací v ZeroNetu a nějaké ty základní informace, o co vlastně jde. Nejdůležitější je však panel umístěný vlevo, kde je seznam stránek, ke kterým jste připojeni. Ukazuje, kdy byla stránka aktualizovaná, kolik ji sdílí klientů a případně stav aktualizace (stahování nových souborů). Také potěší možnost ručně znovu vyžádat ověření autenticity souborů. Stránka se automaticky přidá do seznamu po prvním navštívení a je udržována aktuální. Ale samozřejmě není problém ji ze seznamu odstranit nebo automatickou aktualizaci deaktivovat.

Když nějakou stránku zobrazíte, už ani nepoznáte, že nejste na klasickém webu. Kromě adresy 127.0.0.1:43110 v adresním řádku a toho, že první načtení nejspíš bude alespoň pár sekund trvat kvůli stažení obsahu. ZeroNet celkem pochopitelně nenabízí vyhledávač. Neexistuje ani žádný pořádný katalog stránek, takže musíte různě Googlit a hledat na normálním webu. Asi nejzajímavější stránkou, která není přímo od autorů ZeroNet, je zrcadlo webu privacytools.io (ZeroNet odkaz), který přináší přehled nástrojů pro ochranu soukromí, šifrování apod. Také existuje několik bran, díky kterým lze k obsahu ZeroNet přistupovat i bez klienta, nicméně u nich nemáte záruku autenticity obsahu.

Vytvoření stránky a existující služby

Co se týče vytvoření vlastních stránek, tak to už je trošku složitější a budete potřebovat pár příkazů. To tu nebudeme rozebírat, vše potřebné zájemci najdou v manuálu. Hlavní je jako vždy pečlivě schraňovat privátní klíč. Můžete samozřejmě vytvořit jednoduché statické stránky, pustit se do tvorby vlastní webové aplikace apod. V základu je několik aplikací, které buď můžete používat jako služby nebo je můžete naklonovat a rozjet vlastní instanci. Jde např. o sociální síť, nástěnku nebo jednoduché fórum. To moc zajímavé není.

Zajímavější je blogovací platforma ZeroBlog, která funguje podobně jako Medium nebo WordPress. Naklonování na vlastní stránky a založení blogu je otázkou několika minut. Docela zajímavý je také šifrovaný e-mail ZeroMail fungující ve spojení se službou ZeroID, která pro síť poskytuje identity. Ty lze použít také pro komentování blogů a další věci. V zásadě aplikace nejsou špatné, ale jsou jen velmi jednoduché a jde spíš o proof of concept, který má ukázat, že v ZeroNetu jdou postavit i větší aplikace.

ZeroBlog: celkem hezký a funkční blogovací systém

ZeroBlog: celkem hezký a funkční blogovací systém

Projekt by zasloužil více pozornosti

ZeroNet je pro mě milé překvapení. Funguje spolehlivě a jeho použití je jednoduché – program může rozběhnout a používat i méně zkušený uživatel, podobně jako třeba Tor Browser. Technologicky se ZeroNet do značné míry podobá OpenBazaaru (dříve DarkMarket), což je P2P tržiště. Až je překvapivé, že je OpenBazaar o tolik známější. Pokud ZeroNet zkombinujete s Torem, což je oficiálně podporovaná možnost, dostanete opravdu dobrou kombinaci anonymity a decentralizace obsahu. Právě díky decentralizaci a nepoužívání klasických domén je ZeroNet prakticky nedotknutelný.

Ovšem i přesto, že jde o dobrý nápad s podobně dobrým provedením, se ZeroNet z nějakého důvodu téměř nepoužívá. Když jsem síť testoval, hlavní stránku sdílelo cca čtyři sta klientů, což je opravdu málo. A není to jen o klientech, v síti je celkově málo zajímavého obsahu. Asi je to proto, že cenzura v podobě přímého zastavování serverů apod. ještě nepředstavuje takový problém. Nezávislost na centrálním doménovém systému pak může zajistit i síť Tor s doménami .onion. ZeroNet však určitě stojí za pozornost.

Našli jste v článku chybu?