Zero Knowledge Proofs & zkSNARKs: Beginners Guide

Důkazy nulových znalostí jsou kryptografická alchymie, jejíž hodnota spočívá v jejich zdánlivě paradoxní vlastnosti dokazování tvrzení, aniž by o tom něco prozradily. Ve způsobu, jakým má být řečeno, má mít ověřovatel, kterému byl předložen důkaz nulové znalosti, Bůh řekl, že tomu tak je.

Boží funkce v daném kontextu je však jedním ze základních protokolů nebo nastavení, ve kterých se scénář odehrává. A co je důležité pro účely blockchainových agentur jako institucionálních orgánů, umožňuje vynucení škodlivých účastníků v protokolu, který provádějí v souladu s předem stanovenými kroky k zajištění globální bezpečnosti v jinak maskovaném soukromí.

Kdybych měl jen čas a ty měl jen mozek.

– Lewis Carroll, Lov Snarků

Zoo složitosti P a NP

Při získávání dobré intuice o důkazech nulových znalostí je důležité porozumět několika základním pojmům, které se týkají technologie blockchain. V informatice se problémy třídy P týkají problémů, které lze vyřešit přiměřeně rychlým programem na počítači nějakého druhu (Turingův stroj nebo jiný model), nebo jinými slovy, pro které existuje implementovatelné řešení, které lze vylepšit co se nazývá polynomiální čas (ve skutečnosti synonymem rychlého času).

Nejdůležitější je, že polynomiální výrazy (z řečtiny, „mnoho jmen“) nejsou exponenciální funkce (tj. K moci), ale mapují problémy aritmetických obvodů lineárních, kvadratických, kubických a podobných typů, kde je požadovaný počet kroků přijatelné ve srovnání s velikostí problému. To znamená problémy týkající se věcí, jako jsou bludiště, násobení atd., Nebo které lze na tyto problémy omezit.

Polygrafový stroj

Polygraf, stroj pro podvojný vstup

Ve struktuře blockchainu, kde je uzákonění transakcí masivně replikováno v singulární knize mezi mnoha distribuovanými uzly reprodukujícími stejné výstupy (podobně jako detektory lži polygrafů, v základním principu), je důležité, aby počet výpočtových kroků v sadě pokyny jsou omezeny na minimum.

To je důvod, proč důkazy s nulovými znalostmi v takovém prostředí musí být „stručné“ a nevyžadovat reprodukci provedení, aby byla prokázána platnost tohoto provedení.

Třída složitosti NP (pro nedeterministický polynomiální čas) na druhé straně popisuje problémy, kde spolehlivost jejich řešení má důkazy, které lze efektivně ověřit deterministickými výpočty v uvedeném polynomu, nebo řekněme lineárně-sekvenční blockchainový čas.

To znamená, že mentální práce nezbytná pro řešení konkrétního problému může být redukována nebo převedena na jednodušší problém, který je schopen mechanizovat proces myšlení, který rozvíjí konkrétní binární rozhodovací strom.

A protože blockchainy jako takové vyžadují přísný determinismus k udržení integrity globálního konsensu (stejný vstup musí vždy produkovat stejný výstup s malou nebo žádnou odchylkou), mají mnohem lepší měřítko, pokud jsou zapojeny pouze k ověření / čtení místo provádění / zápisu.

zk-SNARKs v tomto scénáři optimalizují způsob použití blockchainu jako ověřovatele obecné výpočetní integrity mimo řetězec, s časy ověřování v řetězci rychlejšími než časy provádění, v logaritmu (tj. inverzní umocňování) příslušné kroky nebo cykly (měřeno ve výdajích na plyn na blockchainu Ethereum).


To má mnoho potenciálních aplikací, od využití blockchainové agentury jako prostředníka institucionálních transakcí až po maskování velkých zůstatků a transakcí mimo pozornost zlomyslně zvědavých očí, zabraňujících efektům „velryb“ v rozjetém ​​vlaku a botům až po doplňková škálovací řešení a možná zapojení blockchain jako druh detektoru malwaru.

A možná ještě obecněji k tomu, jak je nejcennější společenský zdroj důvěry jako takový znovu artikulován a behaviorálně přeložen zpět do usnadnění lidské spolupráce v herních teoretických scénářích, které dříve nebyly v rovnováze.

Nulové znalosti

Důkazy nulových znalostí jsou v podstatě kryptografické konstrukce, které zkoumají, jak daleko lze dosáhnout formální logiky při řešení záludných problémů. V ZKP prover, Peggy a ověřovatel Victor (místo příslovečné Alice a Boba) interagují v sérii kroků takovým způsobem, že Peggy je schopna prokázat Victorovi platnost nějakého prohlášení, aniž by o tom prozradila cokoli , vzhledem k tomu, že oba dodržují omezení stejného protokolu.

Základní myšlenka je ilustrována v běžném kryptografickém folklóru na známém příkladu jeskyně Ali Baba. Představte si jeskyni ve tvaru prstence se vstupem a magickými dveřmi na druhém konci, které blokují boky.

Peggy chce Victorovi dokázat své znalosti tajné fráze, která otevírá dveře, aniž by tuto frázi prozradila. Takže Victor čeká trochu venku, pak jde dovnitř a křičí, ze které strany chce, aby se Peggy objevila. To se opakuje, dokud se pravděpodobnost, že se Peggy jednoduše ukáže jako šťastná, blíží nule.

Příklad nulových znalostí

Jeskyně Aliho Baba. S laskavým svolením Scott Twombly

Koncept interaktivních systémů s nulovými znalostmi byl poprvé představen Shafi Goldwasser a Silvio Micali na konci 80. let a obecný předpoklad, že důkaz daného prohlášení jako takového obsahuje více poznatků než jediná pravdivá / nepravdivá platnost tohoto prohlášení (s využitím pomocných vstupů, „poklopů“ atd. .) je základem většiny moderní kryptografie od té doby.

Důkaz nulové znalosti musí ze své podstaty splňovat následující tři vlastnosti:

  • Úplnost: Pokud je prohlášení pravdivé a obě strany dodržují stejný protokol správně, ověřovatel se přirozeně přesvědčí.
  • Zdravost: Pokud je tvrzení nepravdivé, ověřovatel téměř jistě nebude přesvědčen (Pravděpodobně kontrolovatelné konstrukce důkazů se spoléhají na opakování, dokud se pravděpodobnost nepravdy nebo štěstí při převrácení mince blíží nule).
  • Nulové znalosti: Ověřovatel se nedozví žádné další informace.

Když to Micali a Manuel Blum převzali, brzy ho následovali další vyšetřování možnosti úspory drahocenného zdroje odstraněním komunikačních kol interakce (které bývají výpočetně nejnákladnější) a místo toho se spoléhají na společný referenční řetězec odvozený ze sdíleného nebo veřejného náhodného majáku (například stejný Geigerův čítač).

V posledních 20 letech se výzkum systémů s nulovými znalostmi postupně zlepšoval se zaměřením na optimalizaci jejich účinnosti pro konkrétní aplikace a vylepšení v různých scénářích parametrů, což vedlo k dramatickému snížení jak délky společného referenčního řetězce, tak i velikosti důkaz.

zk-SNARKS: Zero-Knowledge Succinct Non-Interactive ARgument of Knowledge

Konstrukce zk-SNARK zahrnuje tři souhry algoritmů:

  • Generátor klíčů: Nastavení parametrů pro generování páru klíčů. Například důvěryhodná skupina lidí vygeneruje pár soukromých / veřejných klíčů, zničí soukromou část a poté z veřejné části vygeneruje další dvojici klíčů, čímž vytvoří ověřovací a ověřovací klíč pro daný program.
  • Prover: Prover bere poskytnutý prokazovací klíč, daný veřejný vstup a soukromého svědka tak, aby splňoval zamýšlený kontext programu, a generuje důkaz.
  • Ověřovatel: Ověření se počítá z ověřovacího klíče, veřejného vstupu a poskytnutého důkazu a hodnotí se buď jako pravda, nebo nepravda v závislosti na tom, zda je důkaz správný nebo ne (v kontextu toho, co se ověřuje, aby se vyhovělo co).

Abychom to viděli živěji, jsou vytvořeny dva polynomiální řetězce, u nichž se očekává, že se nebudou příliš odchýlit od souhlasu s většinou dané legitimity, a poté se na libovolných místech provede řada rychlých náhodných kontrol, aby se zajistilo, že souhlasí.

Implementace ZCash

Zcash Coin

Obrázek přes Fotolia

Protože bitcoinové transakce mohou být anonymizovány sledováním a analýzou vzory peněžních toků (i bez ohledu na mixéry prádla), ZCash buduje decentralizované schéma anonymních plateb nad základnu bitcoinového kódu implementací výše uvedených obecných mechanismů (v konkrétních implementacích, jako je například Pinocchio protokol, původně vyvinut jako praktická metoda pro ověřování výpočtů zadaných externě).

Poskytuje dva režimy blockchainových vysílaných transakcí: transparentní a stíněné. První jsou podobné běžným bitcoinovým transakcím, ale uživatelé mají k dispozici volitelnou funkci ochrany soukromí, která skrývá odesílatele, příjemce a transakční částky, a jejich transakce tedy probíhají ve druhém, stíněném fondu. Diskrétní „selektivní zveřejnění“ umožňuje auditorům prokázat legitimitu a zároveň se vyhnout tomu, co mohou ostatní radary spustit.

Důvěryhodná fáze nastavení v ZCash zahrnuje složitý obřad následující po Protokol pro výpočet více stran ve kterém se skupina účastníků šíří v různých geolokacích, společně shromažďují veřejný klíč a ničí jejich odpovídající soukromé střepy. V daném protokolu stačí, že pouze jeden účastník úspěšně vymaže svůj soukromý klíč, aby bylo nemožné rekonstruovat celý soukromý klíč, ze kterého je následně odvozen veřejný klíč.

Kvantově odolná alternativa k obcházení tohoto druhu důvěryhodného nastavení přichází s aktivním výzkumem konstrukcí zk-STARK (Scalable Transparent Argument for Knowledge) od Prof.Eli Ben Sasson a další v Technionu, izraelském technologickém institutu.

ZoKrates: Implementace sady nástrojů proof-of-concept na ethereum

ZoKrates je prototypová sada nástrojů (zatím není příliš výkonná) pro vytváření a ověřování důkazů s nulovými znalostmi v inteligentních kontraktech Solidity Ethereum. Poskytuje jazyk na vysoké úrovni (i když je stále v rané fázi experimentu) pro psaní programů a ověřování jejich provádění v řetězci s podporou fáze nastavení, výpočtu svědků a generování důkazů.

Syntaxe podobná pythonu se skládá z primitivních typů uint (kladná čísla), imperativních algebraických příkazů pro smyčky, podmíněných příkazů if a definic funkcí. Kompilátor transformuje podmínky na omezovací systém aritmetického obvodu (think sudoku), ze kterého je generován zk-SNARK. Ověřovací klíč lze poté exportovat do inteligentní smlouvy umožňující ověření důkazů na blockchainu.

Stavební bloky pro algoritmus ověřování na řetězci jsou umístěny na blockchainu jako předem splněné smlouvy a výsledek ověřovacího algoritmu na poskytnutém důkazu lze použít k dalšímu spuštění další aktivity na řetězci (tj. Pokud je to pravda).

To umožňuje například vytvoření smlouvy o tokenu s důvěrnými zůstatky a zároveň umožňuje (prostřednictvím rozšíření ERC-621) zvyšovat a snižovat nabídku metoměny nebo tokenu.

Uživatelé však musí sledovat své zůstatky na straně klienta (protože se na Etherscanu nezobrazují) a především je vždy třeba pamatovat na to, že platforma Ethereum poskytuje špičkové testovací hřiště pro ekonomické teorie a myšlenky v rámci omezení zdrojů realita řetězení výdajů na plyn, jehož součástí je to, co má tendenci nutit ekonomické myšlení o problémech.

Integrace na kvorovém blockchainu

22. května 2017 společnost ZCash oznámila Proof-of-Concept své technologie vrstvy soukromí na podnikovém základě založeném na ethereu společnosti JP Morgan Kvorum blockchain, po kterém následoval cenový skok v ZCash (protože se také krátce poté připojily k Ethereum Enterprise Alliance).

Quorum je minimální vidlice Ethereum s vlastním jazykem inteligentních kontraktů (Constellation) navrženým speciálně pro institucionální finanční trhy, a protože důkazy nulových znalostí procházejí tenkou hranicí mezi osobním soukromím a institucionální integritou, jsou ideální pro zajištění soukromého vypořádání digitálních aktiv v knize kvora.

Je pozoruhodné, že při vývoji vlastního podnikového blockchainového rámce JP Morgan v minulosti podstatně přispěl k rozvoji a posílení veřejného řetězce v procesu.

Doporučený obrázek přes Fotolia

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map