Zero knowledge proof - czym jest ta technologia? [Crypto 101] | CrypS.

Zero knowledge proof – czym jest ta technologia?

3 min
Maciej Zerelik
zero knowledge proof Altcoiny

Kryptografia, czyli nauka stojąca za kryptowalutami to skomplikowana dziedzina, w której cały czas powstają nowe rozwiązania. Jednym z nich jest zero knowledge proof, czyli po polsku dowód zerowej wiedzy i to na nim skupimy się w tym artykule. Wyjaśnimy co to jest zero knowledge proof, jak działa, jaka jest jego historia, gdzie wykorzystywana jest ta technologia i wiele więcej. Tak więc, zaczynajmy!


Spis treści:


Zero knowledge proof – czym jest i historia powstania

Zero knowledge proof (dowód zerowej wiedzy) to protokół kryptograficzny, który pozwala jednej stronie (stronie udowadniającej) potwierdzić prawdziwość twierdzenia innej stronie (weryfikatorowi) bez ujawniania jakichkolwiek dodatkowych informacji na jego temat (ani treści, ani źródła, z którego strona udowadniająca dowiedziała się prawdy).

Definicja ta została po raz pierwszy zaproponowana przez naukowców z MIT: Shafi Goldwassera, Silvio Micali i Charlesa Rakoffa w pracy badawczej zatytułowanej „The complexity of proof in interactive systems”.

Jak działa zero knowledge proof?

Wyobraź sobie, że jesteś w pokoju z osobą, która ma zawiązane oczy. Na stole przed tobą leżą dwie kulki – biała i czarna. Musisz udowodnić drugiej osobie (weryfikatorowi), że kulki są naprawdę różnych kolorów, nie zdradzając, jakich.

kulki zero knowledge proof

Aby to zrobić, powinieneś poprosić go o schowanie obu kulek pod stół. Po tym poproś, aby wyjął tylko jedną, tak abyś mógł ją zobaczyć. Następnie kulka znów jest ukryta i następnym razem weryfikator może znów pokazać biały lub czarny kolor. Jednak będziesz w stanie udowodnić roszczenie, ponieważ dokładnie wiesz, czy zmienił je pod stołem.

Niemniej jednak weryfikator nie będzie całkowicie pewny prawdziwości faktu. Osoba mogła bowiem mieć szczęście lub dopuścić się oszustwa. Problem ten rozwiązuje się przez powtórzenie eksperymentu n razy. Z każdą rundą szansa na przypadkową rację zmniejszy się o połowę: po pięciu powtórzeniach prawdopodobieństwo pomyłki wynosi 1 na 32, po 10 rundach – 1 na 1024, a po 20 rundach – około 1 na 1 000 000.

Dzięki powtórzeniom możliwe jest osiągnięcie pożądanego poziomu wiarygodności dowodu. Nie da się jednak osiągnąć absolutnej pewności.

Zero knowledge proofs – gdzie wykorzystywana jest ta technologia

Jednym z oczywistych zastosowań dowodu zerowego ujawnienia w kryptowalutach jest weryfikacja, że użytkownik ma środki na transakcję bez ujawniania uczestnikom sieci, kim jest użytkownik lub ile pieniędzy ma na swoim koncie.

Protokół ten może być również stosowany w obszarach, w których konieczne jest zabezpieczenie danych (np. informacji osobowych) lub transakcji finansowych.

Zero knowledge proof może pełnić rolę narzędzia zapewniającego weryfikację danych i użytkowników, uprzywilejowany dostęp i zaufane połączenia.

Jakie są rodzaje dowodu zerowej wiedzy?

  • Interaktywny (weryfikator samodzielnie przeprowadza rozmowę z osobą udowadniającą w czasie rzeczywistym);
  • Nieinteraktywny (nie wymaga bezpośredniej komunikacji między weryfikatorem a osobą udowadniającą; ten pierwszy może zweryfikować prawdziwość twierdzenia dopiero po fakcie).

Dowody zerowej wiedzy można również podzielić na dwie grupy w oparciu o obecność lub brak fazy uwierzytelniania twierdzenia przez wielu weryfikatorów – tzw. trusted setup z wykorzystaniem funkcji boolowskiej.

Dla niektórych protokołów, takich jak zk-SNARKs (Zero-Knowledge Succinct Non-Interactive ARgument of Knowledge), jest to warunek konieczny. Weryfikatorzy generują specjalny sekret, który jest niszczony natychmiast po zaufanej instalacji. Jeśli sekret nadal istnieje, dane w sieci mogą być manipulowane, co neguje korzyści z używania protokołu.

Istnieją protokoły, które nie wymagają zaufanej instalacji (np. zk-STARK (Zero-Knowledge Scalable Transparent ARguments of Knowledge).

Dowód zerowej wiedzy – zalety i wady

Zero knowledge proof niesie za sobą sporo korzyści. Najważniejsze z nich to:

  • Zwiększenie prywatności użytkowników w publicznych blockchainach i innych sieciach.
  • Wzmocnienie bezpieczeństwa informacji poprzez zastąpienie nieefektywnych metod uwierzytelniania i weryfikacji.
  • Zwiększenie przepustowości blockchaina i poprawa skalowalności.

Niestety, rozwiązanie to ma także wady, do których należą:

  • Wymaga znacznej mocy obliczeniowej.
  • Jest narażony na hacki.
  • Potencjalna słabość do obliczeń kwantowych.

Zero knowledge proof – które projekty wykorzystują tą technologię?

ZCash, kryptowaluta skupiona na zwiększeniu prywatności użytkowników, wykorzystuje zmodyfikowany protokół zk-SNARKs. Ten sam protokół został częściowo wdrożony w sieci Ethereum w ramach hardforka Byzantium.

QEDIT opracował SDK (Software Development Kit), który umożliwia wdrożenie dowodów zerowej wiedzy w już istniejących blockchainach, aby zwiększyć prywatność transakcji, a jednocześnie umożliwić walidację przez węzły. Projekt został nagrodzony przez Komisję Europejską Seal of Excellence, a wśród jego partnerów są tak znane firmy jak VMWare, Ant Financial czy Deloitte.

Firma StarkWare stworzyła rozwiązania oparte na protokole zk-STARKs, które można zaimplementować również w istniejących sieciach. Projekt pozyskał finansowanie od Vitalika Buterina, Pantera Capital, Intel Capital, Sequoia Capital i innych inwestorów.

Holenderski bank ING wydał zmodyfikowaną wersję Zero-Knowledge Range Proof (ZKRP). Protokół ten może udowodnić, że pensja klienta znajduje się w zakresie wymaganym do zakwalifikowania się do kredytu hipotecznego bez ujawniania samej kwoty.

Dodaj komentarz

Ostrzeżenie o ryzyku Kryptowaluty oraz produkty lewarowe to bardzo ryzykowne istrumenty finansowe, mogące spowodować szybką utratę kapitału.

Materiały opublikowane na tej stronie mają jedynie cel informacyjny i nie należy ich traktować jako porady inwestycyjnej (rekomendacji) w rozumieniu przepisów ustawy z dnia 29 lipca 2005r. o obrocie instrumentami finansowymi. Nie są również doradztwem prawnym ani finansowym. Opracowania zamieszczone w serwisie Cryps.pl stanowią wyłącznie wyraz poglądów redakcji i użytkowników serwisu i nie powinny być interpretowane w inny sposób.

Niektóre artykuły opatrzone są odnośnikami do innych stron. Służy to uzupełnieniu przedstawionych informacji.
Niektóre jednak linki mają charakter afiliacyjny: prowadzą do oficjalnych stron producentów, na których można kupić opisywany produkt. Jeśli użytkownik dokona transakcji po kliknięciu w link, nasz serwis pobiera z tego tytułu prowizję. Nie wpływa to na finalną cenę produktu, a w niektórych przypadkach ją obniża. Portal CrypS.pl nie ponosi odpowiedzialności za treści, które znajdują się na podlinkowanych stronach.