Z pewnością Ty, jako użytkownik Bitcoina, Etheru lub jakiejkolwiek innej kryptowaluty, obawiałeś się, że każdy może zobaczyć, ile monet masz w portfelu, komu je przelałeś i od kogo je otrzymałeś. Istnieje wiele kontrowersji wokół anonimowych kryptowalut, ale z jedną rzeczą, z którą nie możemy się zgodzić, jest to, w jaki sposób
W tym artykule przyjrzymy się technologicznemu aspektowi anonimowości – jak to robią, i przedstawimy krótki przegląd najpopularniejszych metod, ich zalet i wad.
Obecnie istnieje kilkanaście łańcuchów bloków, które umożliwiają anonimowe transakcje. Jednocześnie dla niektórych anonimowość przelewów jest obowiązkowa, dla innych opcjonalna, niektórzy ukrywają jedynie adresatów i odbiorców, jeszcze inni nie pozwalają osobom trzecim zobaczyć nawet kwot przelewów. Prawie wszystkie technologie, które rozważamy, zapewniają pełną anonimowość – zewnętrzny obserwator nie jest w stanie analizować ani sald, odbiorców, ani historii transakcji. Zacznijmy jednak naszą recenzję od jednego z pionierów w tej dziedzinie, aby prześledzić ewolucję podejścia do anonimowości.
Obecnie istniejące technologie anonimizacji można z grubsza podzielić na dwie grupy: te oparte na mieszaniu – gdzie użyte monety są mieszane z innymi monetami z blockchainu – oraz technologie wykorzystujące dowody oparte na wielomianach. Następnie skupimy się na każdej z tych grup i rozważymy ich zalety i wady.
Oparta na ugniataniu
CoinJoin
Opiera się na prostym pomyśle – co jeśli użytkownicy dokonają wpłaty i dokonają płatności w ramach jednej transakcji? Okazuje się, że jeśli Arnold Schwarzenegger i Barack Obama dorzucili się i w jednej transakcji dokonali dwóch płatności na rzecz Charliego Sheena i Donalda Trumpa, to trudniej jest zrozumieć, kto finansował kampanię wyborczą Trumpa – Arnold czy Barack.
Ale z głównej zalety CoinJoin wynika jego główna wada – słabe bezpieczeństwo. Obecnie istnieją już sposoby identyfikowania transakcji CoinJoin w sieci i dopasowywania zestawów danych wejściowych do zestawów wyników poprzez porównanie ilości wydanych i wygenerowanych monet. Przykładowym narzędziem do takiej analizy jest
Plusy:
• Prostota
Wady:
• Wykazano możliwość hackowania
Monero
Pierwsze skojarzenie, które pojawia się słysząc słowa „anonimowa kryptowaluta” to Monero. Ta moneta
W jednym ze swoich ostatnich
W protokole Monero każdy wynik transakcji jest mieszany z co najmniej 11 (w momencie pisania tego tekstu) losowymi wynikami z łańcucha bloków, co komplikuje wykres transferu sieci i sprawia, że zadanie śledzenia transakcji staje się skomplikowane obliczeniowo. Wpisy mieszane sygnowane są podpisem pierścieniowym, co gwarantuje, że podpis został złożony przez właściciela jednej z monet mieszanych, ale nie pozwala ustalić kto.
Aby ukryć odbiorców, każda nowo wygenerowana moneta korzysta z jednorazowego adresu, co uniemożliwia obserwatorowi (oczywiście tak trudnemu, jak złamanie kluczy szyfrujących) powiązanie dowolnego wyniku z adresem publicznym. A od września 2017 r. Monero zaczęło wspierać protokół
Plusy:
• Testowany czasowo
• Względna prostota
Wady:
• Generowanie i weryfikacja dowodu jest wolniejsza niż w przypadku ZK-SNARK i ZK-STARK
• Nieodporny na włamania przy użyciu komputerów kwantowych
Mimblewimble
Mimblewimble (MW) został wynaleziony jako skalowalna technologia anonimizacji transferów w sieci Bitcoin, ale znalazła zastosowanie jako niezależny blockchain. Stosowany w kryptowalutach
MW wyróżnia się tym, że nie posiada adresów publicznych, a w celu wysłania transakcji użytkownicy bezpośrednio wymieniają się wynikami, eliminując tym samym możliwość analizy przelewów od odbiorcy do odbiorcy przez zewnętrznego obserwatora.
Aby ukryć sumy wejść i wyjść, stosuje się dość powszechny protokół zaproponowany przez Grega Maxwella w 2015 roku -
W oryginalnym CT, aby zagwarantować nieujemność wartości (tzw. dowód zasięgu), stosują podpisy boromejskie (sygnatury pierścieniowe boromejskie), które zajmowały dużo miejsca w blockchainie (około 6 kilobajtów na wyjście ). W związku z tym wady anonimowych walut korzystających z tej technologii obejmowały duży rozmiar transakcji, ale teraz zdecydowano się porzucić te podpisy na rzecz bardziej kompaktowej technologii - Bulletproofs.
W samym bloku MW nie ma koncepcji transakcji, są w nim jedynie produkty wydawane i generowane. Brak transakcji - nie ma problemu!
Aby zapobiec deanonimizacji uczestnika przelewu na etapie wysyłania transakcji do sieci, stosowany jest protokół
Plusy:
• Mały rozmiar łańcucha bloków
• Względna prostota
Wady:
• Generowanie i weryfikacja dowodu jest wolniejsza niż w przypadku ZK-SNARK i ZK-STARK
• Obsługa funkcji takich jak skrypty i wielokrotne podpisy jest trudna do wdrożenia
• Nieodporny na włamania przy użyciu komputerów kwantowych
Dowody wielomianów
ZK-SNARK
Skomplikowana nazwa tej technologii oznacza „
Ogólnie rzecz biorąc, dowód z wiedzą zerową pozwala jednej stronie udowodnić drugiej prawdziwość jakiegoś twierdzenia matematycznego bez ujawniania jakichkolwiek informacji na ten temat. W przypadku kryptowalut stosuje się takie metody, aby udowodnić, że np. transakcja nie generuje więcej monet niż wydaje, bez ujawniania kwoty przelewów.
ZK-SNARK jest bardzo trudny do zrozumienia i opisanie jego działania zajęłoby więcej niż jeden artykuł. Na oficjalnej stronie Zcash, pierwszej waluty implementującej ten protokół, poświęcony jest opis jej działania
Za pomocą wielomianów algebraicznych ZK-SNARKs udowadnia, że nadawca płatności jest właścicielem monet, które wydaje i że ilość wydanych monet nie przekracza liczby wygenerowanych monet.
Protokół ten powstał z myślą o zmniejszeniu rozmiaru dowodu ważności oświadczenia i jednocześnie szybkiej jego weryfikacji. Tak, według
Jednakże przed użyciem tej technologii wymagana jest złożona procedura zaufanej konfiguracji „parametrów publicznych”, która nazywa się „ceremonią” (
Plusy:
• Mały rozmiar materiału dowodowego
• Szybka weryfikacja
• Stosunkowo szybkie generowanie dowodu
Wady:
• Złożona procedura ustawiania parametrów publicznych
• Odpady toksyczne
• Względna złożoność technologii
• Nieodporny na włamania przy użyciu komputerów kwantowych
ZK-STARK
Autorzy dwóch ostatnich technologii świetnie bawią się akronimami, kolejny akronim oznacza „Zero-Knowledge Scalable Transparent ARguments of Knowledge”. Metoda ta miała na celu rozwiązanie istniejących wówczas niedociągnięć ZK-SNARK: potrzeby wiarygodnego ustawienia parametrów publicznych, obecności toksycznych odpadów, niestabilności kryptografii na hakowanie przy użyciu algorytmów kwantowych i niewystarczająco szybkiego generowania dowodów. Twórcy ZK-SNARK poradzili sobie jednak z ostatnią wadą.
ZK-STARK używają również dowodów opartych na wielomianach. Technologia ta nie wykorzystuje kryptografii klucza publicznego, zamiast tego opiera się na teorii mieszania i transmisji. Wyeliminowanie tych środków kryptograficznych czyni technologię odporną na algorytmy kwantowe. Ma to jednak swoją cenę – dowód może mieć rozmiar kilkuset kilobajtów.
Obecnie ZK-STARK nie ma implementacji w żadnej z kryptowalut, istnieje jedynie jako biblioteka
Więcej o działaniu ZK-STARK przeczytacie w postach Vitalika Buterina (
Plusy:
• Odporność na włamania ze strony komputerów kwantowych
• Stosunkowo szybkie generowanie dowodu
• Stosunkowo szybka weryfikacja dowodu
• Brak toksycznych odpadów
Wady:
• Złożoność technologii
• Duży rozmiar próbny
wniosek
Blockchain i rosnące zapotrzebowanie na anonimowość stawiają nowe wymagania w zakresie kryptografii. Tym samym zapoczątkowana w połowie lat 1980. dziedzina kryptografii – dowody wiedzy zerowej – w ciągu zaledwie kilku lat została uzupełniona o nowe, dynamicznie rozwijające się metody.
Zatem napływ myśli naukowej sprawił, że CoinJoin stał się przestarzały, a MimbleWimble obiecującym nowicjuszem z całkiem świeżymi pomysłami. Monero pozostaje niezachwianym gigantem w ochronie naszej prywatności. A SNARK i STARK, choć mają wady, mogą stać się liderami w swojej dziedzinie. Być może w nadchodzących latach punkty, które wskazaliśmy w kolumnie „Wady” każdej technologii staną się nieistotne.
Źródło: www.habr.com