Šta je Zero Knowledge VM (zkVM)?
Zero Knowledge VM je virtuelna mašina koja izvršava kod i generiše dokaz da je izvršavanje bilo ispravno, bez otkrivanja ulaznih podataka. Zamislite je kao sudiju koji potvrđuje rezultat, a pritom čuva tajnu taktiku. Isti rezultati, manje otkrivenih detalja.
„zkVM čini sve anonimnim.” Ne baš. Ona dokazuje da je izvršavanje bilo ispravno. Aplikacija bira šta ostaje privatno — mašina to ne nameće.
Kako funkcioniše Zero Knowledge VM (zkVM)
Zamislite program koji se izvršava van lanca, a zatim na lanac šalje kratak matematički račun kao potvrdu da je „sve urađeno kako treba”. U nastavku sledi kratak pregled.
- Korak 1: Programer piše ili kompajlira kod koji će se izvršavati u zkVM-u.
- Korak 2: Program se izvršava van lanca i generiše dokaz, na primer, da je trgovina pravilno obračunata, bez otkrivanja ulaznih podataka trgovca.
- Korak 3: Taj dokaz, zajedno sa minimalnom količinom podataka, šalje se verifikatoru na lancu.
- Korak 4: Verifikator brzo proverava dokaz i beleži potvrdan ili odričan odgovor.
- Korak 5: Drugi ugovori i korisnici mogu da se oslone na rezultat bez ponavljanja zahtevnog računanja.
Ispod haube se oslanja na dokaze sa nultim znanjem kako bi potvrdila izvršavanje. Da, svedok je matematika.
Zašto je Zero Knowledge VM (zkVM) važna
Važna je zato što menja model troškova: zahtevno računanje se obavlja van lanca, a na lancu se vrše samo kratke provere.
- Prednost: Brzina i naknade se poboljšavaju jer je verifikacija jeftina, dok se zahtevno računanje obavlja drugde.
- Perspektiva: Možete sakriti osetljive podatke, a istovremeno obezbediti transparentnost rezultata.
- Značaj: Očekujte primenu u DeFi-ju, igrama, identitetu i drugim oblastima gde su važni i privatnost i matematička proverljivost.
Kada upoređujete zkVM-ove, najpre proverite dve stvari: koje programske jezike podržavaju i koliko brzo verifikator radi na ciljnom lancu.
Ključne karakteristike Zero Knowledge VM (zkVM)
Evo osobina koje ljudi zaista proveravaju:
- Opšta namena: Izvršava razne vrste programa umesto samo jednog namenski napravljenog kola.
- Prilagodljiva: Dokazi se mogu verifikovati na različitim lancima pomoću malog pametnog ugovora.
- Selektivna: Omogućava aplikacijama da izaberu koji ulazni podaci ostaju skriveni, a koji izlazni podaci su javni.
- Efikasna: Provera dokaza je brza čak i kada je prvobitno izvršavanje bilo zahtevno.
- Kompozibilna: Dokazi se mogu grupisati u pakete ili ugnježđavati, pa se sistemi lakše skaliraju i uz manje opterećenja.
Varijante
Ne izgledaju sve zkVM-ove isto. Evo uobičajenih varijanti na koje ćete naići:
- EVM: Cilj joj je da izvršava logiku u stilu Solidity-ja i dokazuje njenu ispravnost, što olakšava direktno ponovno korišćenje aplikacija.
- LLVM: Kompajlira kod iz opštih programskih jezika poput Rust-a ili C-ja u oblik koji se može dokazati.
- Rollup: Koristi se unutar rollup-ova zasnovanih na dokazima validnosti, gde se dokazi objavljuju na osnovnom lancu.
- Suverena: Verifikuje dokaze na sopstvenom lancu, a zatim ih prenosi na druge lance.
Verifikacija je jeftina, ali generisanje dokaza može biti zahtevno i dugotrajno. Upravo je u tome cela poenta.
Primer
Aplikacija za pozajmljivanje obračunava vrednost kolaterala unutar zkVM-a, a zatim na lanac objavljuje samo dokaz, kako bi se likvidacije sprovodile pravedno bez otkrivanja podataka zajmoprimca.
Zanimljivost
Osnovna ideja potiče iz istraživanja iz osamdesetih godina, kada su kriptografi pokazali da možete dokazati da znate neku tajnu, a da je pritom ne otkrijete. Crypto Twitter je samo učinio tu ideju modernom.
Zaključak
Ukratko, Zero Knowledge VM (zkVM) je računar za generisanje dokaza koji omogućava lancima da brzo provere izvršeni posao, a da osetljivi ulazni podaci ostanu skriveni.