Jak oni to robią? Przegląd technologii anonimizacji kryptowalut

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 powiedział Menedżer projektu Monero Riccardo Spagni na swoim koncie na Twitterze: „A co jeśli nie chcę, żeby kasjer w supermarkecie wiedział, ile mam pieniędzy na koncie i na co je wydaję?”

Jak oni to robią? Przegląd technologii anonimizacji kryptowalut

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

CoinJoin nie anonimizuje tłumaczeń użytkownika, a jedynie komplikuje ich śledzenie. Postanowiliśmy jednak uwzględnić tę technologię w naszej recenzji, ponieważ była to jedna z pierwszych prób zwiększenia poziomu poufności transakcji w sieci Bitcoin. Technologia ta urzeka prostotą i nie wymaga zmiany reguł panujących w sieci, dzięki czemu z łatwością można ją zastosować w wielu blockchainach.

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 MonetaDołącz do Sudoku.

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 udowodnione jego stabilność i prywatność pod lupą służb wywiadowczych:

Jak oni to robią? Przegląd technologii anonimizacji kryptowalut

W jednym ze swoich ostatnich artykuły Bardzo szczegółowo opisaliśmy protokół Monero, a dzisiaj podsumujemy to, co zostało powiedziane.

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ół Transakcje poufne (CT) z pewnymi dodatkami, ukrywając w ten sposób również kwoty przelewu. Nieco później twórcy kryptowalut zastąpili podpisy boromejskie kuloodpornymi, znacznie zmniejszając w ten sposób wielkość transakcji.

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 szary и BELKA.

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 - Transakcje poufne (CT). Oznacza to, że kwoty są szyfrowane (a raczej używają schemat zobowiązań), a zamiast nich sieć funkcjonuje na tzw. zobowiązaniach. Aby transakcja została uznana za ważną, ilość wydanych i wygenerowanych monet plus prowizja musi być równa. Ponieważ sieć nie działa bezpośrednio na liczbach, równość zapewnia się za pomocą równania tych samych zobowiązań, co nazywa się zobowiązaniem do zera.

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ół Mniszek lekarski, który wykorzystuje łańcuch węzłów sieciowych proxy o dowolnej długości, które przesyłają transakcję między sobą przed faktycznym przekazaniem jej wszystkim uczestnikom, zaciemniając w ten sposób trajektorię transakcji wchodzącej do sieci.

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 „Zero-Wiedza Zwięzły, nieinteraktywny argument wiedzy”, co można przetłumaczyć jako „Zwięzły, nieinteraktywny dowód wiedzy zerowej”. Stał się kontynuacją protokołu zerocoin, który później przekształcił się w zerocash i został po raz pierwszy zaimplementowany w kryptowalucie Zcash.

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 7 artykułów. Dlatego w tym rozdziale ograniczymy się jedynie do powierzchownego opisu.

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 презентации Zooko Wilcox, dyrektor generalny Zcash, rozmiar dowodu wynosi zaledwie 200 bajtów, a jego poprawność można zweryfikować w 10 milisekund. Co więcej, w najnowszej wersji Zcash twórcom udało się skrócić czas generowania dowodu do około dwóch sekund.

Jednakże przed użyciem tej technologii wymagana jest złożona procedura zaufanej konfiguracji „parametrów publicznych”, która nazywa się „ceremonią” (Ceremonia). Cała trudność polega na tym, że podczas instalacji tych parametrów żadna ze stron nie ma już dla siebie kluczy prywatnych, zwanych „odpadami toksycznymi”, w przeciwnym razie będzie mogła generować nowe monety. Z filmu możesz dowiedzieć się, jak przebiega ta procedura YouTube.

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 bibliotekaSTARK. Twórcy mają jednak na to plany wykraczające daleko poza blockchainy (w ich Biała Księga autorzy podają przykład dowodu DNA w policyjnej bazie danych). W tym celu został stworzony firmy StarkWare, które na koniec 2018 roku zebrano 36 milionów dolarów inwestycje największych firm z branży.

Więcej o działaniu ZK-STARK przeczytacie w postach Vitalika Buterina (Część 1, Część 2, Część 3).

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

Dodaj komentarz