DEFINICJA ZK-SNARK
Prywatność od dawna jest głównym celem i cechą kryptowalut. Jednak to, co mogło zostać uznane za prywatne wcześniej w historii branży, często nie jest już tak postrzegane. Na przykład twierdzenia, że bitcoiny są anonimowe, są obecnie często odrzucane, ponieważ łańcuchy bloków są przezroczyste i otwarte: chociaż pojedynczy adres bitcoinów nie jest powiązany z jedną osobą w sieci, wszystkie transakcje zachodzące w świecie bitcoinów można śledzić i zmapowany. Według Blockonomi tego rodzaju analiza Blockchain była centralną cechą działań rządu i organów ścigania w celu przełamania różnych przestępstw związanych z kryptowalutami i podobnych problemów. Z powodu postrzeganego braku prywatności niektórych oryginalnych kryptowalut, w tym bitcoinów, w ostatnich latach pojawiła się nowa fala tokenów i monet ukierunkowanych na prywatność. Jeden z nich, zcash, jest wspierany przez technologię znaną jako zk-SNARK.
ŁAMANIE ZK-SNARK
Zk-SNARK („zero-wiedzy zwięzły nieinteraktywny argument wiedzy”) wykorzystuje koncepcję znaną jako „dowód braku wiedzy”. Idea stojąca za tymi dowodami jest właściwie dobrze ugruntowana, ponieważ zostały one po raz pierwszy opracowane w latach 80. Mówiąc prościej, dowód braku wiedzy to sytuacja, w której każda z dwóch stron transakcji jest w stanie zweryfikować się nawzajem, że posiada określony zestaw informacji, jednocześnie nie ujawniając, co to za informacja. W przypadku większości innych rodzajów dowodów co najmniej jedna z dwóch stron musi mieć dostęp do wszystkich informacji, co oznacza, że dowód zerowej wiedzy stanowi odstępstwo od normy.
Na przykład tradycyjny dowód, rozważ hasło używane do uzyskania dostępu do sieci online. Użytkownik przesyła hasło, a sama sieć sprawdza zawartość hasła, aby sprawdzić, czy jest poprawne. W tym celu sieć musi również mieć dostęp do treści hasła. Wersja tej sytuacji, w której nie ma wiedzy, wymagałaby od użytkownika zademonstrowania w sieci (poprzez dowód matematyczny), że ma poprawne hasło, bez ujawnienia samego hasła. Korzyści z prywatności i bezpieczeństwa w tej sytuacji są oczywiste: jeśli w sieci nie ma gdzieś hasła do celów weryfikacji, hasła nie można skradzić.
Podstawa matematyczna zk-SNARKS jest złożona. Niemniej jednak tego rodzaju dowody pozwalają jednej ze stron wykazać nie tylko, że istnieje konkretna część informacji, ale także, że dana strona ma świadomość tych informacji. W przypadku zcash, zk-SNARK można zweryfikować niemal natychmiast, a protokół nie wymaga żadnej interakcji między prover i weryfikatorem.
Istnieją oczywiście również obawy związane z ZK-SNARK. Na przykład, jeśli ktoś był w stanie uzyskać dostęp do tajnej losowości, która została użyta do stworzenia parametrów protokołu dowodu, mógł stworzyć fałszywe dowody, które mimo wszystko wyglądały na ważne dla weryfikatorów. Umożliwiłoby to tej osobie tworzenie nowych tokenów zcash w procesie fałszowania. Aby temu zapobiec, zcash został zaprojektowany w taki sposób, aby protokoły sprawdzające były opracowane i rozłożone na wiele stron.
Chociaż budowa procesu sprawdzania zcash została zakończona w taki sposób, aby zminimalizować możliwość fałszowania tokenów za pomocą fałszywych dowodów, istnieje jeszcze co najmniej jeden problem związany z kryptowalutą. Zcash został stworzony z 20% „podatkiem” nałożonym na wszystkie bloki utworzone w ciągu pierwszych kilku lat tokena. Podatek ten nazywany jest „podatkiem założycielskim” i służy do zrekompensowania programistom kryptowaluty. Krytycy zasugerowali, że założyciele mogliby potencjalnie wykorzystać ten aspekt systemu do stworzenia nieskończonej liczby tokenów zcash bez wiedzy o istnieniu tych tokenów. Z tego powodu nie jest do końca znana dokładna liczba istniejących tokenów zcash w tym momencie.
