Dokazi bez znanja za anonimno rutiranje | dVPN i DePIN
TL;DR
Problem sa tradicionalnim rutiranjem i zašto nam je potreban ZKP
Da li ste se ikada zapitali da li je vaš VPN sa „no-logs“ politikom zaista toliko privatan kao što marketing tvrdi? Teško je prihvatiti, ali tradicionalno rutiranje — čak i ono šifrovano — u osnovi je manjkavo jer se oslanja na slepo poverenje u centralne autoritete i statične putanje koje je iznenađujuće lako manipulisati.
Većina ljudi doživljava VPN kao magični tunel, ali „ispod haube“, to je samo niz protokola za rukovanje (handshake) sa serverom provajdera. Problem je u tome što ovi serveri postaju centralne tačke neuspeha. Čak i ako provajder tvrdi da ne beleži logove, vi i dalje svoju privatnost poveravate njihovoj reči i fizičkoj bezbednosti njihovog data centra.
- Paradoks „No-Logs“ politike: Morate verovati da provajder nije pod pritiskom vlade ili žrtva neprimetnog upada u sistem. Ako je centralni server kompromitovan, vaši metapodaci — ko ste i kuda idete — postaju potpuno izloženi.
- Nepošteni čvorovi u P2P mrežama: U decentralizovanim mrežama srećemo se sa fenomenom „lažnog rutiranja“. Čvor može tvrditi da ima najbržu putanju do odredišta samo kako bi presreo vaše pakete radi analize, što je klasičan primer napada „čovek u sredini“ (man-in-the-middle).
- Preusmeravanje saobraćaja: Istraživanje Džejkoba D. Vajta iz Nacionalne laboratorije Los Alamos (2023) naglašava kako ruteri mogu da „lažu“ o svojim putanjama, što dovodi do blackholing napada ili presretanja unutar autonomnih sistema. (White, J. D., "ZKPNet: Verifiable Routing," LA-UR-23-29806).
Potreban nam je način da dokažemo da je putanja rutiranja validna, a da pritom ne otkrijemo samu putanju niti podatke koji se njome prenose. Tu na scenu stupaju dokazi nultog saznanja (Zero-Knowledge Proofs - ZKP). Zamislite to kroz analogiju sa „Valdom“: mogu da dokažem da sam pronašao Valda na mapi tako što ću ga pokazati kroz malu rupu na ogromnom komadu kartona. Dokazao sam da znam gde se on nalazi, a da vam nisam otkrio ostatak mape.
- Minimizacija podataka: ZKP omogućava čvoru da dokaže da je poštovao protokol i polise, a da pritom ne otkrije nikakve privatne mrežne šeme.
- Zaštita metapodataka: Za razliku od obične enkripcije, koja skriva sadržaj ali ostavlja „mrvice hleba“ (IP adrese, vremenske oznake), ZKP može sakriti identitet pošiljaoca čak i od samih čvorova koji prenose podatke.
- Verifikacija bez poverenja (Trustless): Ne morate verovati vlasniku čvora; verujete matematici. Ako se dokaz ne poklopi, paket se ne pomera.
U finansijama, banka bi mogla koristiti ZKP za rutiranje transakcija kroz mrežu treće strane kako bi prikrila poreklo, a da pritom mreža ne vidi detalje računa. U zdravstvu, bolnica može deliti kartone pacijenata preko P2P mreže gde čvorovi za rutiranje ne mogu čak ni da „vide“ koja klinika traži podatke, čime se osigurava usklađenost sa strogim zakonima o privatnosti.
Iskreno govoreći, trenutno stanje rutiranja na internetu je haos pun metapodataka koji cure i protokola zasnovanih na „veruj mi na reč“. Ali, ako to poverenje možemo zameniti matematičkom izvesnošću, možda ćemo konačno dobiti privatnost koja nam je obećana.
Kako ZKPNet i NIAR menjaju pravila igre
Dakle, utvrdili smo da je trenutno rutiranje na internetu u suštini niz „obećanja na časnu reč” između servera. Ako želimo da prevaziđemo taj model, potrebna nam je konkretna matematika koja ne kompromituje naše poverljive podatke. Upravo tu na scenu stupaju ZKPNet i NIAR (Network Infrastructure for Anonymous Routing – mrežna infrastruktura za anonimno rutiranje). NIAR je, zapravo, okvir koji nam omogućava da gradimo ove anonimne putanje bez centralnog autoriteta.
Uobičajeno, ako ruter želi da dokaže da može da dosegne određenu destinaciju, on mora da vam pokaže svoju tabelu rutiranja ili određene interne šeme. To predstavlja bezbednosni košmar za svakog internet provajdera ili, na primer, bolničku mrežu. Džejkob D. Vajt iz Nacionalne laboratorije Los Alamos (2023) predstavio je ZKPNet, biblioteku zasnovanu na programskom jeziku Rust, koja kreira „gedžete” za ove potvrde.
- Minimalni otisak: Ovi dokazi su minijaturni, ponekad veličine svega 224 bajta koristeći groth16 protokol. To možete ubaciti u zaglavlje bez rizika da premašite maksimalnu veličinu paketa (MTU).
- Dostupnost jednog skoka (Single-Hop Reachability): Čvor može da dokaže da ima validnu putanju do „Rutera Y” bez otkrivanja tačnog broja skokova ili internih IP adresa.
- Kompromisi u performansama: Latencija u realnom vremenu je ovde najveća prepreka. Testovi na M1 Max procesoru pokazuju da je za generisanje dokaza potrebno oko 468 ms. Tih 468 ms je čitava večnost za jedan paket, pa se zato ZKP ne koristi za svaki bit podataka. Umesto toga, ZKP se koristi za operacije na kontrolnoj ravni (control-plane) — poput uspostavljanja putanje — dok stvarni podaci protiču velikom brzinom čim se uspostavi „poverenje”.
Zatim imamo sPAR (Somewhat Practical Anonymous Router), koji pokušava da reši problem neophodnosti „poštenog čvora” u sistemima kao što je Tor. Kako navode Debajoti Das i Džongeun Park (2025), sPAR koristi višestranu potpuno homomorfnu enkripciju (FHE) tako da čak ni ruter ne zna kuda šalje podatke.
Fascinantan deo je način na koji se izbegava „problem kolizije”. Ako više korisnika pokuša da iskoristi isti slot propusnog opsega, podaci bivaju uništeni. sPAR koristi strategiju izbora od tri (choice-of-three) — matematički trik sa „kuglicama i kantama” — gde klijent bira tri nasumična indeksa, a poruka se smešta u prvi slobodan.
- Homomorfno postavljanje: Server smešta vaš paket u „kantu” a da pritom nikada ne vidi indeks koji ste izabrali. Sve se obavlja dok su podaci još uvek kriptovani.
- Ograničenja skaliranja: Trenutno, sPAR neće zameniti globalnu mrežu. On podržava oko 128 korisnika uz latenciju od nekoliko sekundi, što ga čini savršenim za specifične namene poput miksovanja kripto transakcija ili privatne razmene poruka unutar lokalne mreže (LAN).
Zamislite maloprodajni lanac koji treba da sinhronizuje zalihe. Korišćenjem rutiranja u sPAR stilu, centralni server ne može da mapira koja prodavnica šalje koje ažuriranje. To sprečava konkurente da na osnovu obima saobraćaja „nanjuše” koje su lokacije najprofitabilnije.
Rudarenje protoka i ekonomija tokenizovanih mreža
Da li ste ikada razmišljali o tome kako vaš kućni internet stoji neiskorišćen dok ste na poslu ili spavate? To je zapravo protraćen resurs, baš kao da imate praznu sobu koju nikada ne izdajete.
Upravo tu nastupa DePIN pokret (decentralizovane mreže fizičke infrastrukture) koji menja pravila igre kreirajući svojevrsni „Airbnb za internet protok“. Umesto da samo svakog meseca plaćate račun svom internet provajderu, sada možete zapravo zarađivati kriptovalute deljenjem svoje neiskorišćene veze sa globalnom P2P mrežom.
Izgradnja decentralizovanog VPN-a (dVPN) ili proksi mreže zahteva hiljade čvorova kako bi sistem bio zaista funkcionalan. Da bi motivisali ljude da pokreću ove čvorove, projekti koriste tokenizovane podsticaje. Vi obezbeđujete „infrastrukturu“, a mreža vam plaća u uslužnim tokenima.
Međutim, ovde postoji ogroman tehnički izazov: kako mreža može da zna da vi zaista pružate kvalitetan protok, a da pritom ne špijunira saobraćaj koji rutirate? Ako čvor počne da beleži podatke korisnika kako bi „dokazao“ da radi, ceo koncept privatnosti koji nudi Web3 VPN pada u vodu.
- Rudarenje protoka (Bandwidth Mining): Korisnici instaliraju lagani klijentski softver za čvor koji doprinosi odlaznom kapacitetu mrežnog bazena. Nagrade se obično obračunavaju na osnovu vremena dostupnosti (uptime), propusne moći i geografske potražnje.
- Dokazi uz očuvanje privatnosti: Ovde tehnologija dokaza sa nultim znanjem (ZKP) postaje spas. Možete dokazati dostupnost i usklađenost sa protokolom bez otkrivanja stvarnog sadržaja paketa ili internih mapa mreže.
- Kvalitet usluge (QoS): Čvorovi mogu pružiti „Dokaz o protoku“ (Proof of Bandwidth) koji koristi matematičke atestacije kako bi potvrdio da ne ograničavaju saobraćaj ili namerno ne „gutaju“ pakete.
Ako želite da pratite kako ovi specifični VPN protokoli evoluiraju, poseta portalu SquirrelVPN za najnovije vesti o VPN tehnologiji i bezbednosnim ažuriranjima je odličan potez. Oni prate prelazak sa centralizovanih data centara na ove modele distribuiranih čvorova.
„Ekonomski“ deo ovog procesa odvija se direktno na blokčejnu (on-chain). Pametni ugovori deluju kao automatizovani posrednici, upravljajući razmenom između korisnika kojima je potrebna privatnost i operatera čvorova koji imaju višak protoka.
- Automatiovana P2P plaćanja: Umesto mesečne pretplate velikoj korporaciji, plaćate tačno onoliko koliko potrošite. Pametni ugovor u realnom vremenu šalje mikro-isplate provajderima čvorova.
- Otpornost na Sibil napade (Sybil Attack): Jedna osoba koja pokreće 1.000 lažnih čvorova sa jednog servera mogla bi da uništi decentralizaciju mreže. Protokoli dokaza o protoku — često podržani obaveznim ulogom (staking) — čine „laganje“ o resursima ekonomski neisplativim.
U našem primeru iz zdravstva, klinika bi mogla da plaća protok na ovoj mreži koristeći tokene. Pošto mreža koristi sPAR logiku o kojoj smo ranije govorili, klinika dobija anonimnost, a operateri čvorova dobijaju isplatu — i sve to bez mogućnosti da internet provajder vidi obrasce saobraćaja između klinike i bolnice.
Detaljna analiza sloja tehničkog protokola
Sada prelazimo sa ekonomskog modela na sam sloj tehničkog protokola. Ovde zalazimo u samu srž toga kako zapravo implementiramo ove dokaze direktno u paket podataka.
Ključni proboj ovde je napuštanje koncepta jedinstvene tačke otkazivanja (single point of failure). U tipičnim sistemima, jedna osoba drži ključeve celog sistema. Međutim, korišćenjem višestranog potpuno homomorfnog šifrovanja (fhe), možemo generisati zajednički javni ključ gde apsolutno niko ne poznaje glavni tajni ključ.
- Zajedničko generisanje ključeva: Tokom faze podešavanja, svaki učesnik kreira sopstveni tajni ključ. Oni se kombinuju u jedan javni ključ ($pk$). Kao što su objasnili Debajoti Das i Džongeun Park (2025) u svom radu o sPAR-u, glavni tajni ključ je zapravo zbir svih pojedinačnih ključeva. Pošto niko ne deli svoj privatni deo, "kompletan" ključ ne postoji ni na jednom pojedinačnom mestu.
- RLWE (Ring Learning With Errors): Ovo je matematička osnova sistema. Narodski rečeno, RLWE je poput složene slagalice gde podacima dodajete malu količinu "šuma". Računaru je izuzetno teško da reši ovaj problem unazad, što nam pruža ind-cpa sigurnost (što znači da napadač ne može razlikovati dve različite šifrovane poruke, čak i ako pretpostavi šta se u njima nalazi).
Struktura paketa: Gde se dokaz nalazi
Gde tačno smeštamo taj ZKP (dokaz sa nultim znanjem) od 224 bajta? U modernoj IPv6 arhitekturi koristimo zaglavlja za proširenje (Extension Headers). Konkretno, koristimo prilagođeno zaglavlje za "opcije odredišta" (Destination Options).
| Osnovno IPv6 zaglavlje | Zaglavlje za proširenje (ZKP) | Korisni podaci (Šifrovani podaci) |
|---|---|---|
| Izvorna/Odredišna IP adresa | Tip: 0xZK Dužina: 224 bajta Dokaz: [Groth16 Blob] |
Stvarna poruka |
Postavljanjem dokaza u zaglavlje za proširenje, ruteri koji ne podržavaju ZKPNet mogu jednostavno proslediti paket dalje. Međutim, čvorovi koji su "ZKP-svesni" će se zaustaviti, verifikovati dokaz u roku od 2,7 ms i tek onda ga proslediti. Ako je dokaz lažan, paket se odmah odbacuje.
- Zaštita od dvoznačnosti (Equivocation Protection): Sprečavamo čvorove da šalju lažne informacije tako što istoriju komunikacije ugrađujemo direktno u ključeve. Korišćenjem heša (hash) istorije komunikacije za ažuriranje javnog ključa u svakoj rundi, osiguravamo da matematika prestane da funkcioniše ako server pokuša da prikaže različitu "stvarnost" različitim korisnicima.
- Verifikabilni fhe: Umesto da se oslanjamo na poverenje da će čvor ispravno obaviti proračune, koristimo verifikabilni fhe. To je poput digitalnog računa koji dokazuje da je server pratio protokol tačno onako kako je propisano.
U našem maloprodajnom primeru, ovaj tehnički sloj je upravo ono što omogućava sinhronizaciju podataka između 100 prodavnica. Strategija "izbora između tri kante" (choice-of-three bin strategy) osigurava da čak i ako napadač presretne paket i pregleda IPv6 zaglavlje, ne može saznati iz koje prodavnice podaci potiču, jer ZKP dokazuje validnost putanje bez otkrivanja identiteta izvora.
Budućnost DePIN-a i interneta otpornog na cenzuru
Ako ćemo iskreno, današnji internet je u suštini skup ograđenih vrtova koji se pretvaraju da su globalno javno dobro. U prethodnim delovima smo govorili o tome kako dokazi sa nultim znanjem (ZKP) i P2P razmena protoka mogu da poprave samu infrastrukturu, ali ključno pitanje je kako se sve to skalira kada milioni ljudi pokušaju da strimuju video sadržaj istovremeno.
Skaliranje ovih protokola postaje izuzetno komplikovano zbog takozvane "trileme anonimnosti". Uglavnom morate da birate dva od tri faktora: snažnu privatnost, nisko kašnjenje (latenciju) ili niske troškove mrežnog protoka. Analiza složenih sistema kao što je Tor pokazuje da se čak i uz "savršenu" kriptografiju i dalje suočavate sa napadima na nivou sistema, poput korelacije saobraćaja, ukoliko mreža nije dovoljno gusta.
Najveće usko grlo za decentralizovane mreže fizičke infrastrukture (DePIN) jeste odnos između "veličine dokaza" i "vremena dokazivanja". Ako bi svaki paket u Web3 VPN-u zahtevao Groth16 dokaz, vaš ruter bi se bukvalno istopio. Da bismo ovo rešili, fokusiramo se na rekurzivne dokaze.
- Rekurzivni SNARK-ovi: Umesto da verifikuje 1.000 pojedinačnih dokaza za svaki paket, čvor može da "zamota" te dokaze u jedan jedini meta-dokaz. To je poput ruske babuške gde spoljni sloj dokazuje ispravnost svega što se nalazi unutra.
- Smanjenje stanja (State Shrinking): Ovo održava veličinu blokčejna na razumnom nivou. Umesto da svaki čvor mora da poznaje celokupnu istoriju mreže, dovoljno je da verifikuje poslednji rekurzivni dokaz kako bi potvrdio da je tabela rutiranja verodostojna.
Kompanije polako shvataju da su centralizovani VPN servisi zapravo slaba tačka za bezbednost podataka. Distribuirani čvorovi čine tu metu mnogo težom za pogađanje.
- Rutiranje zasnovano na veštačkoj inteligenciji: Svedočimo prelasku na softverski definisane mreže (SDN) gde AI agenti u realnom vremenu biraju putanju koja je najotpornija na cenzuru.
- Zaobilaženje internet provajdera (ISP Bypass): Tokenizacijom povezivanja mi zapravo gradimo paralelni internet. Više nije reč samo o skrivanju IP adrese; reč je o posedovanju infrastrukture tako da provajder ne može jednostavno da "ugasi prekidač" i prekine vam pristup.
Vodič za implementaciju za operatore čvorova
Dakle, upoznali ste se sa matematikom i teorijom, ali se verovatno pitate kako zapravo pokrenuti čvor u praksi. Iskreno, postavljanje čvora sa podrškom za dokaze bez poznavanja informacija (ZKP) je projekat koji zahteva slobodan vikend, ali to je jedini način da pređete sa „verovanja VPN provajderu“ na „verovanje zakonima fizike“.
Specifikacije i podešavanje čvora
Nije vam potrebna čitava farma servera, ali ne možete ga baš pokrenuti ni na tosteru.
- Minimalne specifikacije: Preporučujem najmanje 8 GB RAM-a i moderan procesor sa 4 jezgra.
- Mreža: Simetrična optička veza je idealna, ali je neophodno bar 20 Mbps odlaznog saobraćaja (upstream).
Inicijalizacija mehanizma za dokazivanje (Proof Gadget)
Većina modernih dVPN projekata koristi biblioteke kao što su arkworks ili bellman. Evo primera pseudo-koda koji pokazuje kako čvor može inicijalizovati mehanizam za validaciju putanje koristeći ZKPNet logiku:
// Pseudo-kod za inicijalizaciju ZKP gadžeta za rutiranje
use zkpnet_lib::{Prover, PathCircuit};
fn prove_path(secret_path: Vec<u8>, public_root: [u8; 32]) {
// 1. Inicijalizacija kola sa tajnom putanjom rutiranja
let circuit = PathCircuit {
path: secret_path,
root: public_root,
};
// 2. Generisanje Groth16 dokaza (traje oko 468ms)
let proof = Prover::prove(circuit, ¶ms).expect("Generisanje dokaza nije uspelo");
// 3. Dodavanje dokaza od 224 bajta u IPv6 Extension Header
packet.attach_header(0xZK, proof.to_bytes());
}
Kada podešavate pozadinski sistem (backend), imajte na umu da je vreme dokazivanja ključni faktor – skoro pola sekunde. Ako ovo konfigurišete, postarajte se da vaš čvor ne pokušava da dokazuje svaki pojedinačni paket. Umesto toga, koristite probabilističke dokaze ili grupisanje (batching). Dokazujete da ste ispravno obradili određeni vremenski prozor saobraćaja tokom faze uspostavljanja putanje.
- Problemi sa dvostrukim NAT-om: Ako se vaš čvor nalazi iza dva rutera, P2P pronalaženje (discovery) neće raditi. Koristite UPnP ili ručno prosleđivanje portova (port forwarding).
- Odstupanje sata (Clock Skew): ZKP i blokčejn protokoli su osetljivi na tačnost vremena. Obavezno pokrenite lokalni NTP servis (daemon).
- Curenje IPv6 adresa: Mnogi konfigurišu svoj VPN čvor za IPv4, ali zaboravljaju da njihov internet provajder dodeljuje i IPv6 adrese.
Činjenica je da će prelazak sa centralizovanog interneta na decentralizovani, ZKP-om osnažen sistem, biti izazovan. I dalje se borimo sa problemima latencije i „trilemom anonimnosti“. Ali napredak je stvaran. Bez obzira na to da li pokrećete čvor zbog tokena ili zato što vam je dosta nadzora internet provajdera, vi učestvujete u izgradnji otpornije infrastrukture. Samo zapamtite: redovno ažurirajte firmver, pratite temperaturu procesora i, za ime sveta, čuvajte svoje privatne ključeve.