Ładowanie...

Dailychain logo
Wpisz hasło i naciśnij enter

Zero knowledge proof - co to takiego?

Profilowe autora JaroslawCzarnecki

Jarosław Czarnecki

23 maja 2024

post miniature

Udostępnij

Blockchain jest oparty na kryptografii. Chodzi zarówno o sieci poszczególnych kryptowalut, jak i samą technologię i wszelkie rozwiązania na niej oparte. Jednym z najciekawszych z tych ostatnich jest zero knowledge proof.

Kryptografia, czyli co?

Kryptografia to dziedzina matematyki i informatyki zajmująca się metodami zabezpieczania informacji przed nieautoryzowanym dostępem. Polega na przekształcaniu danych w taki sposób, że tylko uprawnione osoby mogą je odczytać i zrozumieć. Istnieje wiele technik kryptograficznych, takich jak szyfrowanie, deszyfrowanie, podpisy cyfrowe i haszowanie, które odgrywają kluczową rolę w zabezpieczaniu danych w różnych systemach, w tym w blockchainie, szczególnie w sieci bitcoina.

Czym jest Blockchain?

Skoro pojawiło się tu już parę razy pojęcie blockchaina warto wyjaśnić, czym jest ów łańcuch bloków (z ang. block – blok, chain – łańcuch). To rozproszony i zdecentralizowany rejestr, który przechowuje informacje w sposób zabezpieczony kryptograficznie. Każdy blok w łańcuchu zawiera zestaw transakcji, a każdy blok jest powiązany z poprzednim blokiem za pomocą kryptograficznego hasha, co zapewnia nienaruszalność i integralność danych. Blockchain jest podstawą działania wielu kryptowalut, w tym bitcoina.

Dlaczego jednak blockchain opiera się na kryptografii? Powodów jest parę. Chodzi o:

  • bezpieczeństwo transakcji. Kryptografia zapewnia, że tylko właściciel prywatnego klucza może autoryzować transakcje.
  • nienaruszalność danych. Zmiana danych w jednym bloku wymagałaby zmiany wszystkich kolejnych bloków, co jest niemożliwe.
  • anonimowość. Tożsamość użytkowników pozostaje anonimowa.
  • decentralizacja. Kryptografia umożliwia tworzenie zdecentralizowanych systemów, w których nie ma potrzeby istnienia centralnej jednostki kontrolującej.

Zero-Knowledge Proof: zaawansowana technika kryptograficzna

Teraz, gdy wiemy, czym jest blockchain i dlaczego kryptografia jest w nim tak ważna, możemy przejść do sedna.

Zero-knowledge proof (ZKP) to technika kryptograficzna, która pozwala jednej stronie (udowadniającej) potwierdzić prawdziwość twierdzenia innej stronie (weryfikatorowi) bez ujawniania jednak dodatkowych informacji. Jest to szczególnie użyteczne w kontekście blockchaina i kryptowalut, gdzie prywatność i bezpieczeństwo są kluczowe.

Powyższe brzmi dość skomplikowanie. Prosto to wyjaśnić opisując praktyczne zastosowanie tej technologii. W przypadku blockchaina i kryptowalut to weryfikacja, że dany użytkownik ma środki na wykonanie danej transakcji bez ujawniania uczestnikom sieci, kim jest ów użytkownik. Może więc chodzić o przypadki, w których konieczne jest ukrycie danych osobowych danej osoby lub danych finansowych. Jednocześnie owe „zaciemnienie” nie blokuje działania systemu. Mówiąc jeszcze inaczej: możliwe jest sprawdzenie, czy dane informacje są prawdziwe, ale bez ujawniania innych danych.

Rodzaje dowodu zerowej wiedzy

Wyróżnia się dwa główne rodzaje zero-knowledge proof:

Interaktywne: zadania weryfikujące wykonuje osoba przedstawiająca dowód. W tym modelu musi przekonać weryfikatora, że posiada dane informacje.

Nieinteraktywne: W tym wypadku nie ma konieczności zaistnienia interakcji między weryfikatorem a osobą przedstawiającą dowód. Model ten wymaga zastosowania komputerów.

Wady i zalety

Jakie są wady i zalety zero knowledge proofs?

Zaletą jest to, że mimo pozorów mechanizm ten nie wymaga skomplikowanych metod szyfrowania. Do tego zastosowanie zero knowledge proof powoduje, że nie są ujawniane żadne osobiste informacje. Zwiększa to jeszcze bezpieczeństwo informacji. Technologia zwiększa też skalowalność blockchaina.

Są i wady. Zero knowledge jest ograniczony – opiera się na równaniach matematycznych i liczbowych odpowiedziach. Wymaga też sporej mocy obliczeniowej. Na jedną transakcję  przypada aż 2000 obliczeń.

Realne zastosowanie

Gdzie w praktyce stosuje się zero-knowledge proof? Jakie są przykłady zero knowledge proof? Oczywiście, jak już wspomnieliśmy w blockchainie. Do tego dochodzą jeszcze banki. W tym wypadku chodzi o np. przyznawanie kredytu czy pożyczki. Wnioskodawca chce udowodnić, że jego dochód wynosi tyle, ile potrzeba do przyznania mu środków. Może to zrobić przy zachowaniu dla siebie szczegółowych informacji o miesięcznym wynagrodzeniu.

Rozwiązanie jest też stosowane przy głosowaniach online. Głosujący oddają głos, pozostają anonimowi, ale mogą też sprawdzić, czy ich głos został w ogóle uwzględniony.

To główne przykłady zero knowledge proof.

Zero knowledge proof coins

Zero knowledge proof coins to coiny, które są oparte na opisanej w tym tekście technologii. 

Obecnie w branży technologii blockchain stosowane są dwa typy dowodów z wiedzą zerową: ZK-SNARK i ZK-STARK.

StarkWare to sieć drugiej warstwy (layer 2, L2) korzystająca z ZK-STARK, która jest nie tylko tania i szybka, ale także prywatna i zdecentralizowana. Z kolei zkSync to sieć L2 korzystająca z ZK-SNARK, która jest również tania i szybka, ale wymaga zaufanego środowiska konfiguracyjnego.

Przykładami zero knowledge proof coins są m.in.

– polygon (MATIC),

– mina protocol (MINA),

– dusk network (DUSK).

Podsumowanie

Kryptografia jest fundamentem, na którym opierają się blockchain i sieć Bitcoina, zapewniając bezpieczeństwo, anonimowość i decentralizację. Zero knowledge proof jest zaawansowaną techniką kryptograficzną, która umożliwia udowodnienie posiadania informacji bez jej ujawniania, co znajduje szerokie zastosowanie w poprawie prywatności i skalowalności systemów blockchainowych. Dzięki tym technologiom blockchain i kryptowaluty mogą oferować bezpieczne i zdecentralizowane rozwiązania dla wielu współczesnych problemów.

Więcej artykułów z sekcji Wiedza na dailychain.io

Advertisements