Soukromí bylo v kryptoměnové komunitě vždy vnímáno jako cenná funkce. Je to předchůdce zastupitelnosti, která je nezbytná pro široce používanou formu peněz. Podobně většina držitelů kryptoaktiv nechce, aby jejich držba a transakční historie byly zcela veřejné. Mezi různými kryptografickými technikami, jejichž cílem je zajistit soukromí blockchainům, jsou dva pozoruhodné příklady důkazy zk-SNARK a zk-STARK.

zk-SNARK je zkratka pro nulové znalosti stručné neinteraktivní argument znalostí a zk-STARK představuje nulové znalosti stručné, transparentní argument znalostí. Důkazy zk-SNARK používají kryptoměnové projekty (jako je Zcash), v platebních systémech založených na blockchainu a jako způsob, jak bezpečně autentizovat klienty na serverech. Ale zatímco zk-SNARK udělaly významný pokrok k tomu, aby byly dobře zavedeny a přijaty, důkazy zk-STARK jsou nyní nabízeny jako nová a vylepšená verze protokolu, která řeší mnohé z předchozích nedostatků zk-SNARK.

Podobenství o jeskyni Ali Baba

V roce 1990 byl kryptograf Jean-Jacques Quisquater (spolu s dalšími spolupracovníky) publikován článek s názvem „How to Explain Zero-Knowledge Protocols to Your Children“. Článek představuje koncept důkazů zk pomocí podobenství o Ali Babově jeskyni. Od svého vzniku bylo podobenství několikrát adaptováno a nyní máme několik variací. Základní informace jsou však v podstatě stejné.

Představme si jeskyni ve tvaru prstenu s jediným vchodem a magickými dveřmi, které oddělují dvě boční cesty od sebe. Abyste mohli projít magickými dveřmi, musíte zašeptat správná tajná slova. Vezměte si tedy, že Alice (žlutá) chce Bobovi (modrá) dokázat, že ví, jaká jsou tajná slova – a přitom je stále tají. Aby tak učinil, Bob souhlasí, že počká venku, zatímco ona vstoupí do jeskyně, a projde až na konec jedné ze dvou možných cest. V tomto příkladu se rozhodne projít cestou 1.

Po chvíli Bob prochází vchodem a křičí, ze které strany chce, aby se Alice objevila (v tomto případě cesta 2).

Pokud Alice skutečně zná tajemství, spolehlivě se ukáže z cesty, kterou Bob jmenuje.

Celý proces se může několikrát opakovat, aby se potvrdilo, že Alice nezvolila správnou cestu náhodně.

Podobenství Ali Baba’s Cave ilustruje koncept důkazů o nulových znalostech, které jsou součástí protokolů zk-SNARK a zk-STARK. Důkazy ZK lze použít k prokázání vlastnictví určitých znalostí, aniž by o nich byly prozrazeny jakékoli informace.

zk-SNARKs

Zcash je jedním z prvních příkladů projektu, který používá zk-SNARK. Zatímco jiné projekty na ochranu soukromí jako Monero využívají kruhové podpisy a další techniky, zk-SNARKs zásadně mění způsob sdílení dat. Soukromí Zcash je odvozeno ze skutečnosti, že transakce v síti mohou zůstat šifrované, ale stále mohou být ověřeny jako platné pomocí důkazů s nulovými znalostmi. Ti, kteří prosazují pravidla konsenzu, tedy nemusí znát všechna data, která jsou základem každé transakce. Stojí za zmínku, že funkce ochrany osobních údajů v Zcash nejsou ve výchozím nastavení aktivní, ale jsou spíše volitelné a závisí na ručním nastavení.

Důkazy s nulovými znalostmi umožňují jednomu jednotlivci dokázat druhému, že prohlášení je pravdivé, aniž by byly zveřejněny jakékoli informace přesahující platnost prohlášení. Zúčastněné strany se běžně označují jako ověřovatel a ověřovatel a prohlášení, které drží v tajnosti, se nazývá svědek. Hlavním cílem těchto důkazů je odhalit co nejméně dat mezi oběma stranami. Jinými slovy, lze použít důkazy s nulovými znalostmi k prokázání, že mají určité znalosti, aniž by prozradili jakékoli informace o znalostech samotných.

V rámci zkratky SNARK „stručný“ znamená, že tyto důkazy jsou menší a lze je rychle ověřit. „Neinteraktivní“ znamená, že mezi ověřovatelem a ověřovatelem nedochází k žádné nebo téměř žádné interakci. Starší verze protokolů s nulovými znalostmi obvykle vyžadují, aby ověřovatel a ověřovatel komunikovali tam a zpět, a proto jsou považovány za „interaktivní“ důkazy ZK. Ale v „neinteraktivních“ konstrukcích si dokazovatelé a ověřovatelé musí vyměnit pouze jeden důkaz.

V současné době jsou důkazy zk-SNARK závislé na počátečním důvěryhodném nastavení mezi prověřovatelem a ověřovatelem, což znamená, že k vytvoření důkazů s nulovými znalostmi a tedy soukromých transakcí je vyžadována sada veřejných parametrů. Tyto parametry jsou téměř jako pravidla hry; jsou zakódovány do protokolu a jsou jedním z nezbytných faktorů při prokazování platnosti transakce. To však vytváří potenciální problém centralizace, protože parametry jsou často formulovány velmi malou skupinou.

Zatímco počáteční důvěryhodné nastavení je základem dnešních implementací zk-SNARK, výzkumníci pracují na nalezení dalších alternativ, jak snížit míru důvěry vyžadovanou v procesu. Fáze počátečního nastavení je důležitá pro předcházení padělaným výdajům, protože pokud by někdo měl přístup k náhodnosti, která generovala parametry, mohl by vytvořit falešné důkazy, které se ověřovateli zdály platné. Ve Zcash je počáteční fáze nastavení známá jako ceremonie generování parametrů.

Přesuneme se k části zkratky „Arguments of Knowledge“. zk-SNARK jsou považovány za výpočetně spolehlivé, což znamená, že nepoctivý dokazovatel má velmi nízkou šanci úspěšně podvést systém, aniž by měl ve skutečnosti znalosti (nebo svědka) na podporu svého tvrzení. Tato vlastnost je známá jako solidnost a předpokládá, že dokazovač má omezený výpočetní výkon.

Teoreticky by tester s dostatečným výpočetním výkonem mohl vytvořit falešné důkazy, a to je jeden z důvodů, proč jsou kvantové počítače mnohými považovány za hrozbu pro zk-SNARK (a blockchainové systémy).

Důkazy s nulovými znalostmi jsou rychle ověřitelné a obvykle zabírají mnohem méně dat než standardní bitcoinové transakce. To otevírá cestu pro technologii zk-SNARK, která může být použita jako řešení pro ochranu soukromí a škálovatelnosti.

zk-STARKs

zk-STARK vytvořil Eli-Ben Sasson, profesor Technion-Israel Institute of Technology. Jako alternativní verze nátisků zk-SNARK jsou zk-STARK obecně považovány za efektivnější variantu technologie - potenciálně rychlejší a levnější, v závislosti na implementaci. Ale co je důležitější, zk-STARK nevyžadují počáteční důvěryhodné nastavení (proto „T“ pro transparentní).

Technicky vzato, zk-STARK nevyžadují počáteční důvěryhodné nastavení, protože spoléhají na štíhlejší kryptografii prostřednictvím hašovacích funkcí odolných proti kolizím. Tento přístup také eliminuje číselně teoretické předpoklady zk-SNARK, které jsou výpočetně drahé a teoreticky náchylné k útoku kvantovými počítači.

Jinými slovy, důkazy zk-STARK představují jednodušší strukturu z hlediska kryptografických předpokladů. Tato nová technologie má však alespoň jednu velkou nevýhodu: velikost nátisků je větší ve srovnání se zk-SNARKy. Takový rozdíl ve velikosti dat může představovat omezení v závislosti na kontextu použití, ale je to pravděpodobně něco, co lze zjistit při dalším testování a zkoumání technologie.

Závěrečné myšlenky

Je jasné, že jak zk-SNARK, tak zk-STARK apelují na rostoucí obavy týkající se soukromí. Ve světě kryptoměn mají tyto protokoly velký potenciál a mohou být průlomovou cestou k přijetí do hlavního proudu.