Soukromí bylo kryptoměnovou komunitou vždy považováno za velmi cennou funkci. Je to předchůdce zastupitelnosti, která je nezbytná pro široce používanou formu peněz. Většina vlastníků kryptoaktiv nechce, aby jejich držby a historie transakcí byly zcela veřejné. Mezi různými kryptografickými metodami zaměřenými na zajištění důvěrnosti blockchainů jsou dva příklady důkazů hodných pozornosti zk-SNARK a zk-STARK.

zk-SNARK znamená krátký, neinteraktivní argument znalostí s nulovými znalostmi a zk-STARK znamená krátký, transparentní argument znalostí s nulovými znalostmi. Důkazy Zk-SNARK se již používají v Zcash, platebním systému JP Morgan Chase založeném na blockchainu, a jako způsob bezpečného ověřování klientů na serverech. Ale zatímco zk-SNARK učinil významný pokrok ve svém zavedení a adaptaci, zk-STARK je nyní nabízen jako nová a vylepšená verze protokolu, která řeší mnoho z předchozích nedostatků zk-SNARK.


Podobenství o Ali Babovi a jeskyni

V roce 1990 publikoval kryptograf Jean-Jacques Quisquater (spolu s dalšími spolupracovníky) článek s názvem „Jak vysvětlit svým dětem protokoly nulových znalostí“. Článek představuje koncept důkazu ZK s podobenstvím o jeskyni Ali Baba. Od svého vydání byl několikrát revidován a v současné době existuje několik verzí. Základní informace jsou však v podstatě stejné.

Představme si kruhovou jeskyni s jedním vchodem a magickým vchodem oddělujícím dvě boční cesty. Abyste se dostali skrz magické dveře, musíte zašeptat správná tajná slova. Vezměte si tedy, že Alice (žlutá) chce Bobovi (modrá) dokázat, že zná tajná slova, a zároveň je chce utajit. Aby to udělal, Bob souhlasí s tím, že počká venku, zatímco ona vstoupí do jeskyně a půjde na konec jedné ze dvou možných cest. V tomto příkladu se rozhodne jít cestou 1.

Что такое zk-SNARKs и zk-STARKs?

Po chvíli Bob prochází kolem vchodu a křičí, kterým směrem chce, aby se objevila Alice (v tomto případě cesta 2).

Что такое zk-SNARKs и zk-STARKs?

Pokud Alice opravdu zná tajemství, určitě skončí na Bobově zvolené cestě.

Что такое zk-SNARKs и zk-STARKs?

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

Podobenství o Ali Baba a jeskyně ilustruje koncept důkazů nulových znalostí, 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 první široce dostupná aplikace zk-SNARKs. Zatímco jiné projekty na ochranu soukromí jako Monero používají prstenové podpisy a další techniky, které efektivně vytvářejí kouřovou clonu kolem toho, kdo něco poslal, zk-SNARKS zásadně mění způsob výměny dat. Soukromí společnosti Zcash je založeno na skutečnosti, že transakce v síti mohou zůstat šifrované, ale přesto mohou být ověřeny pomocí důkazů s nulovými znalostmi. Ti, kdo uplatňují pravidla konsenzu, tedy nemusí mít všechny údaje, z nichž každá transakce vychází. Stojí za zmínku, že funkce ochrany osobních údajů v Zcash není ve výchozím nastavení povolena, ale podléhá ruční konfiguraci a je volitelná.

Důkazy s nulovými znalostmi umožňují jedné osobě dokázat druhé, že prohlášení je pravdivé, aniž by prozradila jakékoli informace přesahující platnost prohlášení. Zúčastněné strany jsou obvykle označovány jako ověřovatel a ověřovatel a výpověď, kterou zamlčují, se nazývá svědek. Hlavním účelem těchto důkazů je odhalit co nejméně informací 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 další informace.

Zkratka SNARK „compressed“ znamená, že tento důkaz je menší velikosti a lze jej 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 spolu komunikovali, a jsou proto považovány za „interaktivní“ důkazy zk. Ale v „neinteraktivních“ designech si ověřovatel a ověřovatel musí vyměňovat pouze jeden důkaz.

V současné době závisí důkazy zk-SNARK na počátečním nastavení důvěry mezi ověřovatelem a ověřovatelem, což znamená, že k vytvoření důkazů s nulovými znalostmi pro soukromé transakce je vyžadována sada veřejných parametrů. Tyto parametry téměř odpovídají pravidlům hry, jsou zakódovány v protokolu a jsou jedním z nezbytných faktorů potvrzujících, že transakce byla platná. To však vytváří potenciální problém při centralizaci, protože parametry jsou často formulovány velmi malou skupinou.

Zatímco počáteční veřejné nastavení je zásadní pro moderní implementace zk-SNARK, výzkumníci pracují na nalezení dalších alternativ, jak snížit úroveň důvěry vyžadovanou v tomto procesu. Fáze počátečního nastavení je důležitá, aby se zabránilo padělaným výdajům, protože pokud by někdo měl přístup k náhodnosti, která generuje parametry, mohl by vytvořit falešné důkazy, které by se ověřovateli jevily jako platné. Ve Zcash je počáteční fáze nastavení známá jako ceremonie generování parametrů.

Přejděme k „ARuments“ jako fragmentu zkratky. zk-SNARK jsou považovány za výpočetně spolehlivé, což znamená, že nepoctiví ověřovatelé mají velmi nízkou šanci úspěšně oklamat systém. Tato vlastnost je známá jako síla a předpokládá, že ověřovatel má omezený výpočetní výkon. Teoreticky by ověřovatel s dostatečným výpočetním výkonem mohl vytvořit falešné důkazy, což je jeden z důvodů, proč jsou kvantové počítače mnohými považovány za hrozbu pro systémy zk-SNARK a blockchain.

Poslední částí této zkratky je „Znalosti“, což znamená, že zkoušející nemůže konstruovat důkazy, aniž by měl znalosti (nebo svědka) na podporu svého tvrzení.

Důkazy s nulovými znalostmi jsou rychle ověřeny a obvykle zabírají mnohem méně dat než standardní bitcoinové transakce. To dláždí cestu pro technologii zk-SNARK jako řešení pro ochranu soukromí a škálovatelnosti.


zk-STARKs

zk-STARK byl vytvořen jako alternativní verze zk-SNARK a je považován za rychlejší a levnější implementaci technologie. Ale co je důležitější, zk-STARK nevyžaduje počáteční nastavení důvěry (proto "T" transparentní).

Technicky vzato, Zk-STARK nevyžaduje počáteční důvěryhodné nastavení, protože se spoléhá na jednodušší symetrickou kryptografii díky hašovacím funkcím odolným proti kolizi. Tento přístup také odstraňuje číselně teoretické předpoklady zk-SNARK, které jsou výpočetně nákladné a teoreticky náchylné k útokům kvantových počítačů.

Jedním z hlavních důvodů, proč Zk-STARK nabízí levnější a rychlejší implementaci, je to, že počet komunikačních cyklů mezi ověřovateli a ověřovateli zůstává konstantní vzhledem k jakémukoli nárůstu výpočtů. Naproti tomu u zk-SNARKů platí, že čím více výpočtů, tím více stran musí posílat zprávy tam a zpět. Celková velikost dat v zk-SNARK je proto mnohem větší než v zk-STARK.

Je jasné, že jak zk-SNARKS, tak zk-STARKs apelují na rostoucí obavy o soukromí. Ve světě kryptoměn mají tyto protokoly velký potenciál a mohou se stát inovací potřebnou pro masové přijetí.