Domů
Glosář
Důkazy s nulovou znalostí

Důkazy s nulovou znalostí

Středně pokročilí

Důkaz s nulovou znalostí, někdy také označovaný jako protokol zk, je ověřovací metoda, která probíhá mezi dokazovatelem a ověřovatelem. V systému důkazů s nulovou znalostí je dokazovatel schopen ověřovateli dokázat, že zná určitou informaci (například řešení matematické rovnice), aniž by samotnou informaci odhalil. Tyto důkazní systémy mohou moderní kryptografové používat k zajištění vyšší úrovně soukromí a bezpečnosti.

Koncept důkazu s nulovou znalostí byl poprvé popsán v publikaci z MIT v roce 1985 od Shafi Goldwasserové a Silvia Micaliho. Ukázali, že některé vlastnosti čísla je možné dokázat, aniž byste toto číslo zveřejnili nebo o něm sdělili další informace. Tato publikace také přinesla důležité zjištění, že interakce mezi dokazovatelem a ověřovatelem může snížit množství informací potřebných k důkazu dané věty. 

Důkaz s nulovou znalostí musí splňovat dva základní požadavky – úplnost a spolehlivost. Úplnost se týká schopnosti dokazovatele prokázat znalost příslušných informací s vysokou mírou pravděpodobnosti. Aby byl důkaz spolehlivý, musí být ověřovatel schopen spolehlivě určit, jestli dokazovatel skutečně danou informací disponuje. A nakonec, aby byl důkaz skutečně s nulovou znalostí, musí dosáhnout úplnosti i spolehlivosti, aniž by si danou informaci dokazovatel a ověřovatel kdy předali.

Důkazy s nulovou znalostí se nejčastěji používají v situacích vyžadujících soukromí a bezpečnost. Důkazy s nulovou znalosti mohou používat například autentizační systémy, aby ověřily pověření nebo totožnost, aniž by je prozradily. Jednoduchých příkladem může být ověření, že osoba má heslo k počítačovému systému, aniž by bylo nutné dané heslo prozradit. 

Jedna z významných možností využití důkazů s nulovou znalostí ve skutečném světě existuje v oblasti kryptoměn a blockchainové technologie. Pomocí protokolu zk-SNARK (zero-knowledge Succinct Non-interactive Argument of Knowledge) mohou kryptoměny zaměřené na soukromí, jako je Zcash, nabízet svým uživatelům blockchainové transakce se zvýšenou úrovní soukromí. Protokol zk-SNARK používá od své aktualizace Byzantium v roce 2017 také síť Ethereum.