I u stvarnom životu iu digitalnom svijetu, često želimo dokazati stvari drugima. Prije ulaska u poslovnu zgradu, zaposleni obično daju neku vrstu lične karte prije ulaska unutra.
Kada se korisnici pokušaju prijaviti na aplikaciju kao što je Facebook ili Twitter, ove usluge moraju prvo tražiti od korisnika da se prijavi pomoću lozinke, a povremeno se na njihov mobilni uređaj šalje jednokratna lozinka (OTP).
Loša strana pružanja dokaza je što često dajemo druge vrste informacija. Davanje lozinke web stranici i dalje znači da sama web stranica čuva kopiju heširane lozinke na svojim serverima. Ako bi neko hakovao skener ID-a zaposlenih u poslovnoj zgradi, mogao bi da dobije svačije privatne ključeve.
Dokazi bez znanja ili ZKP-ovi pružaju način za potvrđivanje identiteta ili transakcije bez davanja dodatnih informacija. Zbog svoje primjene u kriptografiji, ZKP-ove su prilagodili blockchain za kreiranje sigurnih i skalabilnih protokola za validaciju.
Šta su dokazi bez znanja?
Dokaze bez znanja prvi su predložili istraživači MIT-a Silvio Micali, Charles Rackoff i Shafi Goldwasser 1985. godine u svom radu. “Složenost znanja o interaktivnim dokaznim sistemima”
Ovaj rad uvodi koncept kompleksnosti znanja. Ovo se odnosi na količinu znanja o dokazu koja se prenosi od dokazivača do verifikatora. Dokazi bez znanja imaju za cilj omogućiti stranci da dokaže da je određena izjava istinita drugoj strani bez potrebe da otkrije bilo koju drugu informaciju.
ZKP-ovi se mogu koristiti kao sigurna alternativa trenutnim sistemima za autentifikaciju i također se mogu dodati u blockchain protokole kako bi transakcije bile privatne.
Kako ZKP funkcionišu?
Primjer iz stvarnog svijeta
Da bismo ilustrirali kako funkcionišu dokazi bez znanja, pogledajmo apstraktni primjer ZKP-a.
Recimo da imate prijatelja koji je crveno-zeleni daltonist. Sa sobom imate dvije identične lopte koje se razlikuju samo po boji: jednu crvenu i jednu zelenu. Vašem prijatelju izgledaju identično, ali kao osoba bez daltonizma, lako ih možete razlikovati.
Da li je moguće da dokažete svom prijatelju da su druge boje, a da ne otkrijete koja je lopta crvena ili zelena?
Zapravo, postoji način da se to dokaže bez otkrivanja boja loptica. Prvo, morate pustiti svom prijatelju da stavi obje lopte iza leđa i reći mu da pokaže bilo koju loptu i ponovo je sakrije. Zatim kažete svom prijatelju da ima izbor da ponovo pokaže istu loptu ili da je zamijeni drugom.
Svaki put kada se prikaže nova lopta, možete mu reći da li je promijenio loptu ili ne. Ako nastavite da pogađate pravi poziv, sve je vjerovatnije da su kuglice različite boje. Vaš prijatelj bi sada trebao biti uvjeren da su kuglice različite boje, a da mu ne morate reći koje kuglice imaju koju boju.
praktične primjene
Većina praktičnih primjera dokaza bez znanja spada u dvije vrste.
Prvo, ZKP-ovi se mogu koristiti pri dizajniranju protokola. Možemo osigurati da različite strane ne mogu varati ili iskoristiti protokol. Drugo, ZKP-ovi se mogu koristiti za identifikaciju.
Na primjer, možemo koristiti ZKP za sigurnu prijavu na web aplikaciju bez potrebe da otkrivamo samu lozinku.
Pogledajmo nekoliko primjera kako možemo koristiti dokaze bez znanja.
Elektronsko glasanje
Jedna od uobičajenih primjena ZKP-a je njihova moguća uloga u online glasanju. Recimo da nam predstoji referendum na kojem korisnici mogu glasati o predloženoj politici. Svaki birač sa pravom glasa može glasati 1 ili 0 na glasačkom listiću.
Koristeći ZKP, birači mogu dokazati svoje pravo da glasaju bez otkrivanja identiteta. Ovo osigurava da će svaki glas biti zaista anoniman. Dodatni ZKP će se koristiti i za dokazivanje da je glas određenog korisnika dio konačnog zbroja glasova.
Što se tiče samog sadržaja glasačkih listića, sistem glasanja takođe može da generiše dokaz bez znanja da svaki glasački listić sadrži 1 ili 0. Ovo se postiže bez potrebe da se zna sadržaj samog glasačkog listića.
Blockchain privatnost
Blockchains kao što su Bitcoin i Ethereum izvorno ne podržavaju privatne transakcije. Sve dok je vaš Bitcoin novčanik javan, svako može ići u pretraživač blokova kao što je npr Blockstream da vidite sve transakcije čiji je novčanik dio.
U međuvremenu, korištenje usluge kao što je banka ili usluga plaćanja kao što su Cash App ili Venmo daje vam mogućnost privatnog obavljanja transakcija. Ova pogodnost, međutim, dolazi po cijenu otkrivanja vaših podataka centraliziranoj službi.
Možemo kombinovati anonimnost sa decentralizacijom dodavanjem ZKP-a u blockchain protokol. Kriptovalute kao što je ZCash koriste ZKP za kreiranje privatnih transakcija koje omogućavaju vlasnicima novčića da zadrže svoju anonimnost. Nekoliko od ovih kriptovaluta koristi tip ZKP poznat kao zk-SNARK.
Ovi ZKP-ovi ne zahtijevaju interakciju između dokazivača i verifikatora.
Zero-Knowledge Rollups
ZK-rollup-ovi su rješenje za skalabilnost koje omogućava da se transakcije izvan lanca verificiraju trenutno i uz minimalne naknade za plin. Oni su način da se kombinuje veliki broj Layer 2 transakcija i preda ih na Layer 1 protokol.
Osim što pruža privatnost, ZKP-ovi omogućavaju skaliranje složenih sistema. Blockchain protokoli mogu koristiti ZKP-ove kako bi dokazali da su korisnici podmirili ispravne transakcije, da imaju odgovarajući balans itd. Ova sigurna, ali skalabilna rješenja moguća su samo kroz matematičke dokaze koji se rade van lanca u ZKP-ovima.
Protokoli poput Loopringa koriste dokaze bez znanja kako bi pomogli u procesuiranju transakcija izvan lanca bez kompromitiranja sigurnosti.
Prednosti dokaza bez znanja
- ZKP zamjenjuju manje pouzdane oblike autentifikacije kao što su PIN-ovi ili identifikacijske kartice
- ZKPS povećava skalabilnost blockchaina
- Implementacija ZKP-a zahtijeva jednostavne metode šifriranja
- Upotreba ZKPS-a može učiniti sisteme sigurnijim jer ne zahtijeva pohranjivanje nepotrebnih informacija u sistemu.
zaključak
Privatnost podataka već je glavni problem iu centraliziranim i decentraliziranim sistemima. Dokazi bez znanja pružaju način za različite strane da dokažu ili potvrde transakcije i identitete bez potrebe da otkrivaju navedene transakcije ili identitete.
Kako se blockchain tehnologija sve više koristi, usvajanje ZKP-a za sigurno rukovanje verifikacijom bit će ključno za probleme skalabilnosti.
Ostavite odgovor