Podpisy Schnorr: zwiększanie wydajności bitcoinów po jednym podpisie na raz

Od czasu wydania Segregated Witness w zeszłym roku, na liście życzeń Bitcoin pojawiło się wiele ważnych ulepszeń, które mają pomóc w skalowaniu.

Najważniejszą z nich była implementacja podpisów Schnorra. Ten unikalny algorytm podpisu kryptograficznego jest reklamowany jako jeden z najbardziej wydajnych sposobów na poprawę skalowalności Bitcoina. Zostało to niedawno wyjaśnione w badaniach papier.

Istnieje nadzieja, że ​​te podpisy zastąpią istniejącą technologię podpisów, łącząc ze sobą cały szereg podpisów, a tym samym zmniejszając ilość danych, które muszą być zawarte w transakcjach. Niektóre szacunki wskazują na 25-30% wzrost zdolności transakcyjnej

Zanim przyjrzymy się dokładnie, w jaki sposób przetwarzanie wsadowe z podpisami Schnorra poprawi pojemność, musimy zapoznać się z podstawami podpisów.

Klucze publiczne i prywatne

Transakcje Bitcoin są zasadniczo oparte na kryptografii klucza publicznego. Są one nierozerwalnie połączone z odpowiednim kluczem prywatnym i dla każdego klucza prywatnego może istnieć tylko jeden klucz publiczny. Ten klucz publiczny pochodzi z klucza prywatnego.

Chociaż utworzenie klucza publicznego z klucza prywatnego jest dość łatwe, matematycznie prawie niemożliwe jest zrobienie tego na odwrót. Dlatego tworzenie klucza publicznego z klucza prywatnego jest znane jako plik funkcja jednokierunkowa. To bezpieczeństwo leży u podstaw sieci Bitcoin.

Aby ktoś mógł wydać Bitcoiny, musi udowodnić, że rzeczywiście jest właścicielem określonego adresu. Odbywa się to poprzez użycie ich klucza prywatnego, który będzie odpowiadał kluczowi publicznemu tego adresu. Jednak aby użyć tego klucza prywatnego bez jego ujawniania, wymagany jest podpis kryptograficzny.

To właśnie umożliwia przetwarzanie transakcji Bitcoin. Właściciel może bardzo łatwo podpisać transakcję i przesłać środki komuś innemu bez konieczności ujawniania najważniejszego klucza prywatnego. Ten podpis jest również używany tylko raz i jest ważny dla tej konkretnej transakcji.

Wysyłanie Bitcoinów z jednego adresu na drugi z jednym podpisem jest dość proste. Jednak problem pojawia się, gdy wiele transakcji z wieloma podpisami jest wysyłanych na jeden adres docelowy.

Biorąc pod uwagę, że każda z nich jest postrzegana jako „oddzielna” transakcja, każda z nich będzie miała swój własny podpis. W tym miejscu pojawiły się obawy dotyczące przepustowości, ponieważ wszystkie te podpisy będą musiały zostać uwzględnione jako oddzielne dane wejściowe w poszczególnych transakcjach.

Poza spowolnieniem sieci, transakcje te zwiększą koszt standardowej transakcji. Dzieje się tak, ponieważ istnieje tylko pewna ilość mocy mieszającej, która może je zweryfikować, a wraz ze wzrostem zapotrzebowania na moc mieszającą rośnie cena. Poniżej znajduje się wykres średnich kosztów transakcji.

Koszt transakcji Bitcoin

Koszt transakcji. Źródło: blockchain.info

Dlatego wielu członków społeczności uznało grupowanie za najskuteczniejszy sposób na zmniejszenie zatorów. Uwzględnienie wielu wpisów podpisu jako jednego będzie miało znaczący wpływ.

Jednak w jaki sposób bezpiecznie grupować kombinację różnych podpisów?

Wprowadź podpisy Schnorra

Podpisy Schnorra to szereg reguł matematycznych, które mogą łączyć ze sobą klucz publiczny, klucz prywatny i podpis. Podpisy Schnorra są uważane za najbardziej zaawansowane w dziedzinie kryptografii z wielu powodów. Jednak najważniejszym z nich jest obsługa wielu podpisów.

Algorytmy Schnorra mogą łączyć wszystkie te podpisy w tylko jeden podpis, a tym samym jedno wejście do transakcji. To grupowanie wielu podpisów jest postrzegane jako jeden z najważniejszych sposobów oszczędzania miejsca, a tym samym zmniejszania zatorów.

Było to zawsze znane programistom Bitcoin, ale podpisy Schnorr naprawdę stały się rzeczywistością dopiero po aktywacji SegWit. Jeden z głównych współpracowników w Bitcoin, Jameson Lopp, napisał na Twitterze poniższe oszacowanie, że mogą zmniejszyć liczbę bloków w czasie.

Oprócz obniżenia kosztów i czasu poszczególnych transakcji, istnieje szereg innych korzyści wynikających z połączenia wielu podpisów w jeden podpis.

Zmniejszenie liczby ataków spamowych

Sieć Bitcoin często jest celem ataków spamowych. Zasadniczo dzieje się tak, gdy cała masa transakcji o niskiej wartości jest upychana w blokach Bitcoin, które spowalniają sieć. Były one szczególnie dotkliwe w zeszłym roku podczas klęski SegWit2X.

Te ataki spamowe są często przeprowadzane przez osoby, które chcą tworzyć określoną narrację lub czerpać zyski z wysokich opłat transakcyjnych. Wiele osób obwinia za ataki spamowe duże kopalnie wydobywcze zlokalizowane w Chinach.

Oprócz zwiększania opłat transakcyjnych, te ataki spamowe skracają również czas transakcji i prowadzą do dużej liczby niepotwierdzonych transakcji, które utkną w puli memów Bitcoin. Możesz zobaczyć dokładnie, jak dotkliwe było to w rozmiarze puli memów Bitcoin, która wzrosła w listopadzie / grudniu ubiegłego roku.

Memepool Rozmiar Bitcoina

Rozmiar puli pamięci Bitcoin. Źródło: blockchain.info

Celem tych ataków spamowych jest bez wątpienia odciągnięcie użytkowników od sieci Bitcoin do innych tańszych łańcuchów bloków. Wielu spekulowało, że górnicy próbowali skłonić tych użytkowników do gotówki Bitcoin bezpośrednio po awarii SegWit2X.

Aby przeprowadzić skuteczny atak spamerski, podmioty te zazwyczaj uwzględniają kilka transakcji o niskiej wartości z wielu różnych adresów. W związku z tym stosunkowo łatwo jest zidentyfikować te ataki spamowe.

W jaki sposób podpisy Schnorr ograniczają spamowanie?

Biorąc pod uwagę, że wiele podpisów zostanie teraz połączonych w jeden, w blokach będzie znacznie więcej miejsca. Oznacza to, że aby zapełnić bloki transakcjami śmieciowymi, źli aktorzy muszą wydać znacznie więcej pieniędzy.

W związku z tym, ponieważ transakcje z wieloma podpisami są łączone w jeden podpis, koszt ataku na sieć znacznie wzrasta i staje się niewykonalny ekonomicznie. Jest nadzieja, że ​​wpłynie to na zniechęcenie do tych działań.

Ochrona prywatności

CoinJoin Ochrona prywatności

Zdjęcie za pośrednictwem Fotolia

Jeden z głównych programistów Bitcoin, Gregory Maxwell, zasugerował sztuczkę zwiększającą prywatność, która pozwoli użytkownikom połączyć ich transakcje w jedną transakcję. Podstęp został nazwany CoinJoin i pozwalał na zaciemnianie transakcji.

Uproszczony przykład, łączenie transakcji z CoinJoin jest podobne do umieszczania wszystkich środków w puli przeznaczonej na zakup określonych towarów. Zebrane fundusze zostaną następnie wykorzystane do zakupu wszystkich towarów, w tym produktu.

Chociaż dostaniesz dobro, jakiego chciałeś, ze względu na fakt, że fundusze zostały połączone, nikt nie może prześledzić twojego wkładu do konkretnego wyniku. Rezultatem jest dodatkowy poziom prywatności dla użytkownika.

Choć brzmi to korzystnie, początkowo nie było na to dużego zapotrzebowania. Wynikało to ze złożoności związanej z łączeniem transakcji. Co więcej, ponieważ mniej osób stosowało tę metodę, ci, którzy to robili, natychmiast wzbudzali pewne podejrzenia.

Jednak wraz z wdrożeniem podpisów Schnorr nie tylko transakcje zostaną połączone, ale także podpisy. Spowoduje to wyraźne zmniejszenie wielkości transakcji do poziomu, w którym będzie nawet mniejszy niż wszystkie razem wzięte.

Istnieje nadzieja, że ​​te transakcje CoinJoin z obsługą Schnorr będą znacznie tańsze w przetwarzaniu, a tym samym będą stanowić dodatkową zachętę do ich wykorzystania. Rezultatem byłoby bardziej wdrożenie CoinJoin do łączenia transakcji.

Jest to postrzegane jako podwójna wygrana dla podpisów Schnorr i CoinJoin. Użytkownicy otrzymają niższe opłaty, a także większą prywatność.

Potencjalne problemy z wdrożeniem

Firma Schnorr rozwija się od 2012 roku i dlatego będzie to długa perspektywa. Wynika to głównie z komplikacji związanych z samym Schnorrem. Obecnie nie ma wystarczającej liczby programistów posiadających wystarczające umiejętności w zakresie kryptografii.

Co więcej, biorąc pod uwagę dużą kwotę pieniędzy, jaką stawia na sieć Bitcoin, należy przeprowadzić wiele testów, zanim będą mogły zostać użyte na dużą skalę..

Pojawiło się również wiele innych problemów, które spowolniły postęp podpisów Schnorra. Na przykład w zeszłym roku współzałożyciel blockstream, Pieter Wuille, nadał przemówienie w Stanford, gdzie wspomniał o „niestandardowych wyzwaniach”.

Jednym z nich był możliwy „atak Rouge” w konkretnej implementacji Schnorra. Zwrócił na to uwagę Pieter Wuille przez kryptografa ANSSI Seurina. Stwierdził, że

Zauważyłem, że konkretny schemat agregacji sygnatur, o którym myśleli, nie miał wtedy odpowiedniej analizy bezpieczeństwa

Był też inny subtelny wektor ataku, który został odkryty przez inżyniera Blockstream o imieniu Russel O’Conner, który pozwoliłby aktorom na kradzież Bitcoinów z określonym motywem przewodnim. Nazywało się to dość trafnie „atakiem Russela”.

Chociaż większość z tych wektorów ataków została rozwiązana, nadal trwają prace nad tą technologią, ponieważ jest jeszcze sporo do zrobienia.

Ulepszenia Bitcoin Kontynuuj

Biorąc pod uwagę ostatni burzliwy rok, przez który przeszedł Bitcoin, każda technologia, która pomaga skalować Bitcoin, bez wątpienia zostanie przejęta przez społeczność. Doskonałym tego przykładem jest sieć błyskawicy, rozwiązanie skalujące poza łańcuchem.

Jednak skalowanie łańcucha również znacznie się poprawia, ponieważ liczba adresów SegWit rośnie. Firmy takie jak Coinbase zdecydowały, że korzyści z tych transakcji nie mogą być ignorowane i uwzględniły ich wsparcie.

Teraz, wraz ze zbliżającym się wydaniem podpisów Schnorr, transakcje SegWit z wieloma sygnaturami zostaną znacznie zmniejszone. Oznacza to bardziej wydajny i opłacalny ekosystem Bitcoin dla wszystkich.

Wyróżniony obraz za pośrednictwem Fotolia

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me