Strona Główna
Słowniczek
Dowody Zerowej Wiedzy (Zero-Knowledge Proofs)

Dowody Zerowej Wiedzy (Zero-Knowledge Proofs)

Zaawansowany

Dowód z wiedzą zerową, czasami nazywany również protokołem zk, to metoda weryfikacji, która ma miejsce między stroną udowadniającą a stroną weryfikującą. W systemie dowodu z wiedzą zerową strona udowadniająca jest w stanie udowodnić stronie weryfikującej, że ma wiedzę o jakiejś informacji (np. o rozwiązaniu równania matematycznego) bez ujawniania samej informacji. Dzięki tym systemom potwierdzania współcześni kryptografowie są w stanie zapewnić wyższy poziom prywatności i bezpieczeństwa.

Koncepcja dowodu z wiedzą zerową została po raz pierwszy opisana w pracy instytutu MIT z roku 1985 opublikowanej przez Shafi Goldwasser i Silvio Micaliego. Wykazali oni, że da się udowodnić pewne własności liczby bez ujawniania tej liczby ani jakichkolwiek innych informacji na jej temat. W pracy tej przedstawiono również istotne z matematycznego punktu widzenia odkrycie, że poprzez komunikację między stroną weryfikującą i stroną udowadniającą można zmniejszyć ilość informacji potrzebnych do udowodnienia danego twierdzenia. 

Dowód zk musi spełniać dwa podstawowe wymogi: wymóg kompletności i wymóg rzetelności. Kompletność oznacza, że podmiot udowadniający jest się w stanie wykazać znajomością odpowiednich informacji z wysokim stopniem prawdopodobnej dokładności. Aby dowód był rzetelny, podmiot weryfikujący musi być w stanie wiarygodnie określić, czy podmiot udowadniający faktycznie ma dane informacje. Wreszcie, aby dowód był naprawdę pozbawiony wiedzy, musi spełniać zarówno wymóg kompletności, jak i rzetelności bez wymiany informacji między stroną weryfikującą a stroną udowadniającą.

Dowody z wiedzą zerową najczęściej wykorzystuje się w zastosowaniach, w których niezbędna jest prywatność i bezpieczeństwo. Np. systemy weryfikacyjne mogą wykorzystywać dowody zk do weryfikacji danych uwierzytelniających lub tożsamości bez ich bezpośredniego ujawniania. Prostym przykładem jest tu ich wykorzystanie do weryfikacji, czy dana osoba ma hasło do systemu komputerowego, bez konieczności ujawniania, jakie to hasło. 

Wybitny przypadek zastosowania dowodu z wiedzą zerową w świecie rzeczywistym można znaleźć w sferze kryptowalut i technologii blockchain. Dzięki jednej z odmian dowodu zwanej Succinct Non-interactive Argument of Knowledge (zk-SNARK) kryptowaluty nastawione na prywatność takie jak np. Zcash są w stanie zaoferować swoim użytkownikom transakcje blockchain o wyższym stopniu prywatności. Od czasu aktualizacji Bizancjum w roku 2017 roku z dowodami zk-SNARK pracuje również Ethereum.