ZKP alapú sávszélesség-igazolás dVPN és DePIN hálózatokban
TL;DR
Az adatküldés igazolásának problémája
Gondolkozott már azon, miért fizet „extra gyors” internetért, miközben a videója még mindig úgy akad, mintha 2005-öt írnánk? Ez általában azért van, mert az internetszolgáltatókkal és a VPN-szolgáltatókkal való kapcsolatunk a puszta bizalmon alapul.
A régi világban – amit centralizált webnek hívunk – egyetlen vállalat tulajdonában lévő szerverhez csatlakozik. Ők megmondják, mennyi sávszélességet használt fel, Ön pedig kifizeti a számlát. Ezzel szemben egy decentralizált fizikai infrastruktúra-hálózatban (DePIN) az internetet gyakran egy idegen felhasználó otthoni csomópontján (node) keresztül kapja.
- A központi naplózás (logs) hatalmas adatvédelmi rés: A legtöbb hagyományos VPN azt állítja, hogy „naplózásmentes”, de Ön valójában csak a szavukban bízhat. Ha egy kormányzati szerv adatszolgáltatásra kötelezi őket, ezek a naplófájlok általában előkerülnek.
- A hitelességi szakadék: Ha megosztom Önnel az otthoni optikai kapcsolatomat, hogy kriptotokeneket keressek, mi akadályoz meg abban, hogy hazudjak a hálózatnak, és azt mondjam, 10 GB-ot küldtem, miközben valójában csak 1 GB-ot?
- A „bizalommentes” (trustless) igazolás igénye: Szükségünk van egy módszerre, amellyel bizonyítható, hogy az adatok valóban eljutottak az A pontból a B pontba anélkül, hogy egy közvetítő fél az egész kommunikációt megfigyelné.
A Zero-Knowledge Proof (ZKP) keretrendszerekről készült tanulmány szerint a zéró tudású bizonyítás technológiája lehetővé teszi a „bizonyító” számára, hogy meggyőzze az „ellenőrzőt” egy állítás valódiságáról anélkül, hogy a tényleges titkos adatokat felfedné. A mi világunkban ez azt jelenti: igazolom, hogy elküldtem Önnek az adatokat, anélkül, hogy a hálózatnak „bele kellene szagolnia” az Ön privát adatcsomagjaiba.
Amikor „sávszélesség-bányászatról” vagy a „sávszélesség Airbnb-jéről” beszélünk, alapvetően arra ösztönözzük az embereket, hogy alakítsák át routereiket mini-internetszolgáltatókká (ISP). A kripto-ösztönzők azonban előhozzák a „nyerészkedőket” is – azokat, akik a jutalmakat akarják a munka elvégzése nélkül.
Ahogy az alábbi, a sávszélesség-igazolási folyamatot bemutató ábrán látható, olyan rendszerre van szükségünk, amely a felhasználó adatainak kitettsége nélkül ellenőrzi az adatforgalmat.
Ha egyszerűen hagynánk, hogy a csomópontok maguk jelentsék a saját statisztikáikat, a rendszer összeomlana a csalások miatt. Másfelől, ha hagynánk, hogy a hálózat mindent lásson a forgalom ellenőrzése érdekében, akkor csak egy óriási megfigyelőgépezetet építenénk.
A peer-to-peer (P2P) forgalom mérése köztudottan bonyolult feladat. Ellentétben a bolti pénztárral, ahol beszkennelnek egy vonalkódot, az adatcsomagok áramlása képlékeny. Az olyan iparágakban, mint az egészségügy vagy a pénzügy, ez még kényesebb kérdés. Nem engedhetjük meg, hogy egy harmadik fél vizsgálja át a csomagokat csak azért, hogy kiderüljön, tisztességesen jár-e el a csomópont.
Az arkworks zksnark ökoszisztéma 2023-as jelentése szerint a moduláris könyvtárak válnak az iparági szabvánnyá az olyan „tömör” (succinct) bizonyítékok létrehozásához, amelyek alacsony teljesítményű hardvereken is futtathatók.
Matematikára – pontosabban kriptográfiai kötelezettségvállalásokra (cryptographic commitments) – van szükségünk e szakadék áthidalásához. Enélkül a sávszélesség marad egy „legjobb szándék szerinti” (best effort) szolgáltatás a garantált erőforrás helyett. Mivel ezek a felhasználási módok nagy megbízhatóságot igényelnek, az ellenőrzések blokkláncon történő futtatásának költsége jelenti a legnagyobb akadályt, amelyet le kell küzdenünk.
Mik is azok a zéró tudású bizonyítások?
Képzeld el, hogy be akarsz jutni egy klubba, és be kell bizonyítanod a biztonsági őrnek, hogy elmúltál 18 éves, de nem akarod, hogy lássa a lakcímedet, a pontos magasságodat, vagy azt, hogy mennyire előnytelenül sikerült a fotód a személyidben. Ahelyett, hogy átadnád az okmányodat, mutatsz neki egy fekete dobozt, amelyen csak akkor villan fel egy zöld lámpa, ha valóban teljesíted az életkori követelményt.
Lényegében pontosan ezt teszi a zéró tudású bizonyítás (zero-knowledge proof – ZKP) a digitális világban. Ez egy olyan módszer, amellyel kijelentheted: „Nálama a válasz”, anélkül, hogy ténylegesen felfednéd a mögöttes adatokat vagy a számítási folyamatot.
A mi sávszélesség-piacterünk összefüggésében ez az a technológia, amellyel egy szolgáltató bizonyítja, hogy pontosan 500 MB titkosított forgalmat továbbított neked, anélkül, hogy a hálózat bármikor is belelátna a csomagok tartalmába. Ez hidalja át a szakadékot a „bízz bennem” és az „itt a matematika, ami igazolja, hogy nem hazudok” megközelítések között.
A ZKP alapvetően két szereplőt érint: a Bizonyítót (Prover – aki a sávszélességét megosztja) és az Ellenőrzőt (Verifier – a blokklánc vagy az adatot fogadó felhasználó). A cél az, hogy a Bizonyító meggyőzze az Ellenőrzőt egy állítás valódiságáról úgy, hogy közben abszolút semmilyen plusz információt nem fed fel.
Ahhoz, hogy ez működjön, minden ZKP rendszernek három kritériumnak kell megfelelnie:
- Teljesség (Completeness): Ha a csomópont (node) valóban elküldte az adatokat, a matematikai igazolásnak minden alkalommal sikeresnek kell lennie, hogy a szolgáltató megkapja a kifizetését.
- Helytállóság (Soundness): Ha a csomópont hazudik, a matematikai ellenőrzésnek szinte 100%-os valószínűséggel el kell buknia. Csalásnak helye nincs.
- Zéró tudás (Zero-knowledge): Az Ellenőrző semmit nem tud meg a ténylegesen továbbított fájlokról – csak azt, hogy az adatmennyiség és a célállomás megfelelő volt.
Így marad meg a „zéró” a zéró bizalmi (zero-trust) hálózatokban. Egy dVPN (decentralizált VPN) használatakor nem akarod, hogy a hálózati csomópontok a Netflix-szokásaid vagy a banki belépési adataid után szimatoljanak. A ZKP használatával a csomópont bizonyítani tudja, hogy teljesítette a hálózattal kötött szerződését – és ezzel megkeresi a kriptojutalmait –, anélkül, hogy valaha is „belekukkantana” a privát adatfolyamodba.
Amikor elkezdesz elmélyedni a DePIN (decentralizált fizikai infrastruktúra-hálózatok) projektek technikai részleteiben, a bizonyítások két fő típusával fogsz találkozni: a SNARK-kal és a STARK-kal. Úgy hangzanak, mint egy Lewis Carroll-vers szereplői, de a gyakorlatban nagyon eltérő a karakterük.
A zk-SNARK (Succinct Non-Interactive Arguments of Knowledge) az idősebb, elterjedtebb megoldás. „Tömör” (succinct), ami azt jelenti, hogy a bizonyítások aprók – néha csak néhány száz bájtosak. Ez kiváló a mobil VPN-felhasználók számára, mivel az ellenőrzés nem emészti fel a mobilnet-keretet.
Azonban a legtöbb SNARK (mint például a híres Groth16 protokoll) „megbízható beállítást” (trusted setup) igényel. Ez egy egyszeri esemény, ahol véletlenszerű számokat generálnak a rendszer elindításához. Ha a beállítást végző személyek tisztességtelenek, elméletileg hamisíthatnának bizonyítékokat. Ahogy azt a zéró tudású bizonyítási keretrendszerekről szóló korábbi elemzések is említették, ezért keres sok új projekt alternatívákat.
A zk-STARK (Scalable Transparent Arguments of Knowledge) az újabb, robusztusabb verzió. Nincs szükségük megbízható beállításra – ezek „transzparensek”. Emellett hatalmas előnyük, hogy ellenállnak a kvantumszámítógépeknek is.
Az alábbi architektúra-diagram a SNARK és STARK munkafolyamatok közötti kompromisszumokat szemlélteti P2P környezetben.
Egy P2P sávszélesség-tőzsdén valójában egy decentralizált internetszolgáltatót (ISP) építünk. A kereskedelemben soha nem fizetnél olyan pénztárosnak, aki csak „megígéri”, hogy betette a tejet a szatyorba, de nem engedi, hogy belenézz. A pénzügyekben sem bízol meg vakon egy banki táblázatban; auditot vársz el.
A ZKP-k biztosítják ezt az auditot az adatok számára. Legyen szó egy egészségügyi szolgáltatóról, amely érzékeny betegadatokat küld VPN-en keresztül, vagy egy kiskereskedelmi láncról, amely több ezer üzlet készletét szinkronizálja, tudniuk kell, hogy az adatok célba értek anélkül, hogy a közvetítő (a csomópont) látta volna a tartalmat.
Sávszélesség-hitelesítés kémkedés nélkül
Tegyük fel, hogy csomópontot (node) üzemeltetsz, és a sávszélességed megosztásával kriptovalutát keresel. Ez nagyszerű, de honnan tudja a hálózat, hogy valódi adatokat küldesz például egy berlini felhasználónak anélkül, hogy valaki szó szerint „belehallgatna” a csomagokba az ellenőrzéshez?
Ez egy komoly technikai kihívás. Ha a hálózat látja az adatokat az ellenőrzéshez, a magánéletednek lőttek. Ha viszont semmit sem lát, akkor elméletileg „bányászhatnál” tokeneket úgy is, hogy csak szemét adatokat küldözgetsz saját magadnak. Itt jönnek képbe a sávszélesség-igazoló protokollok (bandwidth proof protocols) technikai részletei.
A probléma megoldására a matematika egy speciális ágát, az úgynevezett vOLE-alapú zéró tudású igazolást (Vector Oblivious Linear Evaluation) használjuk. Tudom, úgy hangzik, mint egy sci-fi regény címe, de valójában hihetetlenül elegáns megoldás a nagy sebességű adatforgalomhoz.
Szemben a SNARK vagy STARK igazolásokkal, amelyek gyakran erőforrásigényes elliptikus görbéket használnak, a vOLE egyfajta „interaktív jósda-bizonyítás” (Interactive Oracle Proof), amely a bizonyító sebességét helyezi előtérbe a bizonyíték méretével szemben. Alapvetően sebességre tervezték, így tökéletes a hatalmas adatfolyamok valós idejű hitelesítésére anélkül, hogy lassítaná a kapcsolatot.
- Nagy sebességű hitelesítés: A vOLE-alapú protokollok kiválóak, mert nem igényelnek nehézkes matematikai műveleteket minden egyes lépésnél. Ezáltal sokkal gyorsabbak a valós idejű sávszélesség-bányászathoz (bandwidth mining).
- Konzisztencia-ellenőrzések: A hálózat ezeket a bizonyítékokat használja annak biztosítására, hogy a csomópont valóban rendelkezik-e az általa állított feltöltési sebességgel. Ha „Supernode”-nak vallod magad, de a matek nem jön ki, az okosszerződés egyszerűen nem indítja el a kifizetést.
- Maradj naprakész: Ha mélyebben érdekel a téma, érdemes követni az olyan közösségeket, mint a squirrelvpn – amely a decentralizált VPN technológiák hírforrása és szakmai fóruma –, hogy lásd, mely protokollok jutnak el ténylegesen a főhálózatig (mainnet).
Az alábbi ábra szemlélteti, hogyan hoz létre a vOLE biztonságos kézfogást a csomópont és az ellenőrző egység között.
A dolog legizgalmasabb része az, ahogyan ez a tárcádhoz kapcsolódik. Egy decentralizált VPN (dVPN) hálózatban azt szeretnénk, hogy a jutalmak kifizetése automatikus legyen. Ne kelljen egy emberi „menedzserre” várnod, hogy jóváhagyja a keresetedet.
Erre használjuk az okosszerződéseket (Smart Contracts), amelyek végső letétkezelőként (escrow) működnek. Ezek a szerződések úgy vannak programozva, hogy „vakok”, de igazságosak legyenek. Őrzik a tokeneket, és csak akkor szabadítják fel őket, ha érvényes zéró tudású igazolást (ZKP) kapnak. Nincs bizonyíték, nincs kifizetés. Ez egy kíméletlen, de elengedhetetlen módszer a P2P hálózat tisztaságának megőrzéséhez.
A gázdíj-probléma megoldása
A múltban az egyik legnagyobb kihívást a „gázdíjak” jelentették – azaz a költség, amit azért fizetünk, hogy adatokat rögzítsünk a blokkláncon. Ha egy bizonyítás túl nagy méretű, a tranzakciós díjak felemészthetik a teljes megkeresett jutalmat. Ez az „on-chain verifikációs ökonómia” az a szűk keresztmetszet, amelyen sok projekt elbukik.
Ennek kiküszöbölésére rekurzív bizonyításokat (Recursive Proofs) alkalmazunk. Ez lényegében egy olyan módszer, amellyel több kisebb bizonyítást validálunk egyetlen nagy bizonyításon belül. Ahelyett, hogy 1000 különálló tranzakciót küldenénk a blokkláncra 1000 kisebb adatátvitel után, a rendszer kötegelve (batching) kezeli őket egyetlen közös bizonyításban. Így a gázdíj több ezer igénylés között oszlik meg, ami felhasználónként mindössze filléres költséget jelent.
A Layer 2 megoldások szintén segítenek azáltal, hogy a számításigényes feladatokat leveszik a fő láncról. A zkp (zéró tudású bizonyítás) verifikálása egy gyorsabb és olcsóbb hálózaton történik, és csak a végső egyenleget rögzítjük a fő blokkláncon – így a rendszer a csomópont-üzemeltetők (node owners) számára is nyereséges marad.
- Automatizált kifizetések: Amint a zkp verifikálása megtörténik a láncon, a tokenek azonnal a csomópont tárcájába kerülnek. Itt nincs szükség „bizalomra”, csak a kód diktál.
- Az adminisztrációs teher csökkentése: Az olyan könyvtárak, mint az arkworks, segítenek a bizonyítások méretének minimalizálásában, hogy azok „tömörek” (succinct) és olcsón verifikálhatóak legyenek.
- Csalás elleni védelem: Mivel a matematikai háttér „sziklaszilárd” (sound), statisztikailag lehetetlen egy csomópont számára 1 GB-os adatforgalmat hamisítani anélkül, hogy az adatok valóban rendelkezésre állnának.
Valós felhasználási módok a ZKP-hoz a DePIN világában
Gondolkozott már azon, hogyan adhatná el az otthoni felesleges sávszélességét egy tokiói felhasználónak anélkül, hogy bármelyiküket átvernék? Ez talán egy technológiai thriller forgatókönyvének hangzik, de valójában ez a DePIN (Decentralizált Fizikai Infrastruktúra-hálózatok) mozgalom alapköve.
Az elképzelés egyszerű: van egy 1 Gbps-os optikai kapcsolata otthon, de azt csak Netflixezésre vagy a Reddit görgetésére használja. Miért ne értékesíthetné a felesleget? Egy decentralizált VPN (dVPN) modellben az Ön routere egy hálózati csomóponttá (node-dá) válik.
- Szolgáltatásminőségi (QoS) garanciák: ZKP-kat (zéró tudású igazolásokat) használunk annak bizonyítására, hogy egy csomópont valóban biztosította a megígért 100 Mbps-os sebességet. A csomópont egy olyan „munkaigazolást” generál, amelyet a blokklánc hitelesít, mielőtt felszabadítaná a kriptovaluta-kifizetést.
- Szolgáltatói adatvédelem: Ön nem akarja tudni, mit csinál a vásárló a hálózatán. A ZKP-k lehetővé teszik a hálózat számára a forgalom mennyiségének ellenőrzését anélkül, hogy Ön valaha is látná a titkosítatlan adatcsomagokat.
Ez a folyamatábra szemlélteti, hogyan igényel egy felhasználó sávszélességet, és hogyan nyújt a csomópont igazolást a kifizetéshez.
Egy érdekes megközelítés látható abban, ahogyan a projektek a „kapcsolati igazolást” (Proof of Connectivity) kezelik. Tudniuk kell, hogy az Ön csomópontja valóban online-e. Ahelyett, hogy másodpercenként pingelnék a rendszert, ZKP-t használhatnak annak igazolására, hogy a csomópont egy adott időablakban végig aktív volt.
Most beszéljünk a valóban nagy tétekről. Ha Ön olyan országban él, ahol „állami tűzfalak” korlátozzák az internetet, már önmagában a VPN használata is gyanút kelthet. A hagyományos VPN protokollok olyan „digitális ujjlenyomatokkal” rendelkeznek, amelyeket a mély csomagelemzés (DPI) könnyen kiszúr.
Itt jön a képbe a cenzúrarezisztens hozzáférés. A ZKP-k segítségével „elhomályosított” (obfuscated) kapcsolatokat hozhatunk létre. A cél nem csupán az adatok titkosítása, hanem annak bizonyítása a hálózat felé, hogy a kapcsolat érvényes, anélkül, hogy egyáltalán kiderülne: egy VPN-alagútról van szó.
Az alábbi diagram azt mutatja be, hogyan rejthetők el a metaadatok a csatlakozás során a cenzúra kijátszása érdekében.
Kihívások és az előttünk álló út
A matematikai alapok tehát megvannak, de vajon a régi routered is bírni fogja a strapát anélkül, hogy kigyulladna? Ez itt a kulcskérdés, hiszen senki sem vágyik egy olyan privát internetkapcsolatra, amivel visszarepül az időben az 56k-s betárcsázós modemek korszakába.
A valóság az, hogy a zéró tudású igazolások (ZKP) generálása „költséges” folyamat – nem feltétlenül dollárban mérve, hanem CPU-ciklusokban. Ha egy nagy sebességű dVPN csomópontot (node) próbálsz futtatni egy olcsó otthoni routeren, a számítási igény hamar az egekbe szökhet.
- Késleltetés vs. Adatvédelem: Itt egy klasszikus kompromisszummal állunk szemben. Ha minden egyes adatcsomagnál 100%-os kriptográfiai bizonyosságot akarunk, a ping (válaszidő) drasztikusan meg fog nőni.
- Hardveres gyorsítás: Már látható az elmozdulás a GPU-k vagy speciális chipek használata felé, amelyek kifejezetten ezen igazolások kezelésére hivatottak.
Az alábbi ábra a hardveresen gyorsított ZKP-verifikáció jövőbeli ütemtervét mutatja be.
Őszintén szólva a „felhasználhatósági szakadék” a legnagyobb akadály, amibe jelenleg ütközünk. A UC San Diego és az Arizona State University kutatóinak 2024-es tanulmánya rámutatott, hogy bár számos keretrendszer létezik, ez a szakadék még mindig a legfőbb hátráltató tényező a fejlesztők számára, akik ezeket az eszközöket a gyakorlatban szeretnék alkalmazni. A dVPN-felhasználók többségét nem érdeklik az elliptikus görbék; ők egyszerűen csak privát szférát akarnak.
A jövőbe tekintve egy olyan világ felé tartunk, ahol az „internetszolgáltató” (ISP) már nem egy felhőkarcolóban székelő óriásvállalat, hanem egy globális hálózat, amelyet olyan emberek alkotnak, mint te vagy én. A ZKP lényegében a Web3 infrastruktúra utolsó hiányzó láncszeme. Ez teszi a rendszert „bizalommentessé” (trustless) – nincs szükséged arra, hogy ismerd a sávszélességet biztosító személyt, mert a matematika garantálja, hogy nem vernek át.