V reálnom živote aj v digitálnom svete často chceme niečo dokázať ostatným. Pred vstupom do kancelárskej budovy zamestnanci zvyčajne pred vstupom do budovy poskytnú nejaký typ preukazu totožnosti.
Keď sa používatelia pokúsia prihlásiť do aplikácie, ako je Facebook alebo Twitter, tieto služby musia najprv používateľa požiadať, aby sa prihlásil pomocou hesla, a príležitostne sa na ich mobilné zariadenie odošle jednorazový prístupový kód (OTP).
Nevýhodou poskytovania dôkazov je, že často poskytujeme iné typy informácií. Poskytnutie hesla webovej stránke stále znamená, že samotná webová lokalita uchováva kópiu hashovaného hesla na svojich serveroch. Ak by niekto hackol skener ID zamestnancov v kancelárskej budove, možno by mohol získať súkromné kľúče všetkých.
Dôkazy s nulovými znalosťami alebo ZKP poskytujú spôsob, ako potvrdiť identitu alebo transakciu bez toho, aby ste museli poskytovať ďalšie informácie. Kvôli svojim aplikáciám v kryptografii boli ZKP prispôsobené blockchainy vytvárať bezpečné a škálovateľné overovacie protokoly.
Čo sú dôkazy o nulových znalostiach?
Dôkazy s nulovými znalosťami prvýkrát navrhli výskumníci z MIT Silvio Micali, Charles Rackoff a Shafi Goldwasser v roku 1985 vo svojom článku. „Komplexnosť vedomostí interaktívnych dôkazových systémov“
Tento článok predstavil koncept komplexnosti znalostí. Týka sa to množstva vedomostí o dôkaze prenesených od dokazovateľa k overovateľovi. Dôkazy s nulovými znalosťami majú za cieľ umožniť jednej strane dokázať, že konkrétne vyhlásenie je pravdivé pre druhú stranu bez toho, aby musela zverejniť akékoľvek ďalšie informácie.
ZKP môžu byť použité ako bezpečná alternatíva k súčasným autentifikačným systémom a môžu byť tiež pridané do blockchain protokolov, aby boli transakcie súkromné.
Ako fungujú ZKP?
Príklad zo skutočného sveta
Aby sme ilustrovali, ako fungujú dôkazy s nulovými znalosťami, pozrime sa na abstraktný príklad ZKP.
Povedzme, že máte priateľa, ktorý je červeno-zelený farboslepý. Máte so sebou dve rovnaké loptičky, ktoré sa líšia iba farbou: jednu červenú a jednu zelenú. Pre vášho priateľa vyzerajú identicky, ale ako človek bez farbosleposti ich ľahko rozoznáte.
Dokážete svojmu priateľovi, že sú inej farby, bez toho, aby ste prezradili, ktorá loptička je červená alebo zelená?
V skutočnosti existuje spôsob, ako to dokázať bez prezradenia farieb loptičiek. Najprv musíte nechať svojho priateľa, aby si dal obe loptičky za chrbát a povedal mu, aby ukázal akúkoľvek loptičku a znova ju schoval. Potom povedzte svojmu priateľovi, že má na výber, či znova ukáže tú istú loptičku, alebo si ju vymení za druhú.
Zakaždým, keď sa ukáže nová loptička, môžete mu povedať, či si loptu vymenil alebo nie. Ak budete neustále hádať správne volanie, je čoraz pravdepodobnejšie, že loptičky sú rôzne sfarbené. Váš priateľ by sa teraz mal presvedčiť, že loptičky sú rôzne farebné bez toho, aby ste mu museli povedať, ktoré loptičky majú akú farbu.
Praktické aplikácie
Väčšina praktických príkladov dôkazov s nulovými znalosťami spadá do dvoch typov.
Po prvé, ZKP môžu byť použité pri navrhovaní protokolov. Môžeme zabezpečiť, aby rôzne strany nemohli podvádzať alebo využívať výhody protokolu. Po druhé, na identifikáciu možno použiť ZKP.
Pomocou ZKP sa môžeme napríklad bezpečne prihlásiť do webovej aplikácie bez toho, aby sme museli prezradiť samotné heslo.
Pozrime sa na niekoľko príkladov toho, ako môžeme použiť dôkazy s nulovými znalosťami.
Elektronické hlasovanie
Jednou z bežne diskutovaných aplikácií ZKP je ich možná úloha v online hlasovaní. Povedzme, že máme nadchádzajúce referendum, v ktorom môžu používatelia hlasovať o navrhovanej politike. Každý oprávnený volič môže hlasovať 1 alebo 0 na hlasovacom lístku.
Pomocou ZKP môžu voliči preukázať svoje právo voliť bez toho, aby odhalili svoju totožnosť. To zaisťuje, že každý hlas bude skutočne anonymný. Dodatočný ZKP sa tiež použije na preukázanie, že hlas konkrétneho používateľa je súčasťou konečného sčítania hlasov.
Pokiaľ ide o samotný obsah hlasovacích lístkov, hlasovací systém môže tiež vygenerovať dôkaz s nulovými znalosťami, že každý hlasovací lístok obsahuje buď 1 alebo 0. To sa dosiahne bez toho, aby ste museli poznať obsah samotného hlasovacieho lístka.
Ochrana osobných údajov blockchainu
Blockchainy ako Bitcoin a Ethereum natívne nepodporujú súkromné transakcie. Pokiaľ je vaša bitcoinová peňaženka verejná, ktokoľvek môže prejsť na prieskumníka blokov ako napr Blockstream aby ste videli všetky transakcie, ktorých je peňaženka súčasťou.
Medzitým používanie služby, ako je banka alebo platobné služby, ako je Cash App alebo Venmo, vám dáva možnosť vykonávať súkromné transakcie. Toto pohodlie však prichádza za cenu odhalenia vašich informácií centralizovanej službe.
Anonymitu môžeme spojiť s decentralizáciou pridaním ZKP do blockchain protokolu. Kryptomeny ako ZCash používajú ZKP na vytváranie súkromných transakcií, ktoré umožňujú držiteľom mincí zachovať si anonymitu. Niekoľko z týchto kryptomien používa typ ZKP známy ako zk-SNARK.
Tieto ZKP nevyžadujú žiadnu interakciu medzi overovateľom a overovateľom.
Súhrny nulových znalostí
ZK-rollups sú riešením škálovateľnosti, ktoré umožňuje okamžité overenie transakcií mimo reťazca a s minimálnymi poplatkami za plyn. Predstavujú spôsob, ako skombinovať veľké množstvo transakcií vrstvy 2 a odoslať ich do protokolu vrstvy 1.
Okrem poskytovania súkromia ZKP umožňujú škálovanie zložitých systémov. Protokoly blockchain môžu používať ZKP na preukázanie, že používatelia vyrovnali správne transakcie, majú primeraný zostatok atď. Tieto bezpečné, ale škálovateľné riešenia sú možné len prostredníctvom matematických dôkazov vykonaných mimo reťazec v ZKP.
Protokoly ako Loopring používajú dôkazy s nulovými znalosťami, aby pomohli spracovať transakcie mimo reťazca bez toho, aby museli ohroziť bezpečnosť.
Výhody dôkazov o nulových znalostiach
- ZKP nahrádzajú menej spoľahlivé formy autentifikácie ako PIN alebo identifikačné karty
- ZKPS zvyšuje škálovateľnosť blockchainov
- Implementácia ZKP vyžaduje jednoduché metódy šifrovania
- Použitie ZKPS môže zvýšiť bezpečnosť systémov tým, že nevyžaduje ukladanie nepotrebných informácií v systéme.
záver
Ochrana osobných údajov je už teraz hlavným problémom v centralizovaných aj decentralizovaných systémoch. Dôkazy s nulovými znalosťami poskytujú rôznym stranám spôsob, ako dokázať alebo potvrdiť transakcie a identity bez toho, aby museli odhaliť uvedené transakcie alebo identity.
Keďže technológia blockchain sa čoraz viac používa, prijatie ZKP na bezpečné spracovanie overovania bude kľúčom k obavám o škálovateľnosť.
Nechaj odpoveď