Przegląd kompromisów dla różnych wdrożeń Sidechain PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Przegląd kompromisów dla różnych implementacji łańcucha bocznego

To jest opinia redakcyjna Shinobi, samouka w przestrzeni Bitcoin i zorientowanego na technologię gospodarza podcastów Bitcoin.

Ten artykuł jest ostatnim z serii poświęconych głównym projektom łańcucha bocznego, które istnieją dla Bitcoina. Zaleca się, aby wcześniej przeczytać poprzednie fragmenty: (1) Łańcuchy kosmiczne(2) Przypadki użycia łańcucha kosmicznego(3) Łańcuszki miękkie(4) Łańcuchy napędowe(5) Sfederowane Łańcuchy.

Czym w skrócie są łańcuchy boczne? Łańcuchy bloków, które umożliwiają przeniesienie bitcoina z łańcucha bloków Bitcoin do tego drugiego łańcucha bocznego. Na tym polega problem i trudność z zaprojektowaniem łańcucha bocznego — tak naprawdę nie możesz tego zrobić. Nie możesz przenieść bitcoina z łańcucha bloków Bitcoin do innego łańcucha bloków; nie jest to możliwe, ponieważ jedynym miejscem, w którym faktycznie istnieje twój bitcoin, jest łańcuch bloków Bitcoin. W rzeczywistości nie mogą istnieć nigdzie indziej. Wszystko, co naprawdę można zrobić, to zablokować swój bitcoin w jakiś sposób na łańcuchu bloków Bitcoin, a następnie utworzyć inne tokeny w innym łańcuchu, aby reprezentować te bitcoiny. Największą aspiracją łańcucha bocznego jest zrobienie tego w sposób, w którym można zweryfikować, że te tokeny istnieją tylko w stosunku 1:1 z prawdziwym bitcoinem (łatwe), a jedynym sposobem na odblokowanie bitcoina w łańcuchu głównym w każdej sytuacji jest weryfikowalne zablokowanie tokeny, które legalnie kontrolujesz w innym łańcuchu (bardzo trudne do zrobienia w sposób pozbawiony zaufania, który nie powoduje, że sam bitcoin jest droższy w weryfikacji).

Prawie wszystkie trudności związane z projektowaniem łańcucha bocznego sprowadzają się do tego, jak zaprojektowano ten mechanizm blokowania i odblokowywania: jak działa blokowanie, jakie warunki są wymagane do ich odblokowania oraz jak te warunki są weryfikowane i egzekwowane. Mechanizmy jednokierunkowe, w których można tylko blokować monety i nigdy ich nie odblokowywać, są banalnie proste. Po prostu spal trochę bitcoina za pomocą OP_RETURN i zażądaj weryfikacji, aby wybić tokeny na nowym łańcuchu i gotowe. Dużo bardziej skomplikowane są mechanizmy dwukierunkowe, obsługujące zarówno blokowanie, jak i odblokowywanie. Jak dotąd nie ma zaprojektowanego mechanizmu dwukierunkowego poza tymi, które zwiększają koszt walidacji głównego blockchainu Bitcoina (softchains) lub wprowadzają nowe założenia zaufania dotyczące bezpieczeństwa monet zamkniętych „w łańcuchu bocznym” (drivechains i federed chains) .

Święty Graal łańcuchów bocznych to mechanizm blokowania i odblokowywania monet, który nie wymaga zaufania, aby go egzekwować i który nie zwiększa kosztów walidacji głównego łańcucha bloków Bitcoin (tj. interakcja pojedynczego łańcucha bocznego z łańcuchem głównym nie jest droższa, dawać lub brać, aby zweryfikować niż pojedynczą transakcję Bitcoin). Obecnie nic tego nie osiąga, więc czas przejść przez wady.

Centralizacja górnictwa

Wszystkie różne projekty, przez które przeszedłem, z wyjątkiem Liquid, w taki czy inny sposób zależą od górników bitcoinów, aby zapewnić bezpieczeństwo łańcucha bocznego. RSK, mimo że jest to federacyjny peg, nadal używa koparek bitcoinów. Softchainy mogłyby teoretycznie wykorzystywać coś innego, ale gdyby nie zapewniały takiego zabezpieczenia typu proof-of-work (PoW), jak górnicy Bitcoin, to otwierałyby łańcuch bloków Bitcoin na ataki typu „odmowa usługi” (DoS). Tak więc w rzeczywistości, gdyby wdrożono softchain, używałby koparek bitcoinów. Spacechains PoW opiera się wyraźnie na koparkach bitcoinów potwierdzających transakcję zobowiązania dla łańcucha bocznego. Łańcuchy napędowe są specjalnie zaprojektowane do kopania scalającego przez górników bitcoinów. Nie ma ucieczki przed zaangażowaniem górników w łańcuchy boczne, jeśli cokolwiek więcej, z wyjątkiem czysto sfederowanego łańcucha bocznego, jest wszystkim, co kiedykolwiek zostało wdrożone.

Przed przystąpieniem do tego ryzyka należy dokonać jednoznacznego rozróżnienia: różnica między samymi górnikami (operatorami sprzętu) a koordynatorami wydobycia (pule; bloki konstrukcyjne węzłów). Pule są niezbędne do regularnego odbierania nagród, jeśli nie masz bardzo dużej ilości fizycznego sprzętu do kopania i jesteś uzasadnionym punktem centralizacji. Centralizacja/decentralizacja górnictwa nie jest prostym tematem (więcej tutaj) i istnieją ważne niuanse dotyczące tego, jak różne aspekty scentralizowanego wydobycia wchodzą w interakcję z innymi aspektami wydobycia. Bez puli wydobywczych dochód górnika jest całkowicie nieprzewidywalnym, nieprzewidywalnym strumieniem dochodów. To w połączeniu z bardzo realnym ryzykiem ewentualnej regulacji basenów górniczych w przyszłości (są podmiotem powierniczym; opiekują się środkami użytkowników do czasu ich wycofania), sprawia, że ​​baseny górnicze są bardzo niebezpiecznym punktem centralizacji przestrzeni.

Górnicy muszą zweryfikować łańcuch bloków, aby kopać, niezależnie od tego, czy ta funkcja jest zlecona na zewnątrz. Bez walidacji łańcucha nie mają pojęcia, czy blok, który wydobywają, zawiera tylko prawidłowe transakcje; wystarczy jeden nieważny, aby unieważnić znaleziony blok i stracić wszystkie pieniądze, które mogli zarobić. Ten wymóg walidacji nie jest jednak powodem, dla którego używane są pule wydobywcze: jest to przewidywalność nagród. Górnik z 1% hashrate bardzo rzadko znajdzie blok i zbierze całą nagrodę, podczas gdy górnik z 1% hashrate korzystający z puli będzie regularnie zbierać około 1% nagrody za blok, którą wspólnie zarabia pula. Koszt walidacji jest niewielki. Przewidywalność nagrody jest punktem sprzedaży, dlatego programiści próbują znaleźć sposób na uzyskanie tych samych korzyści bez konieczności scentralizowanej puli. Pozwoliłoby to górnikom nie polegać na scentralizowanym podmiocie, który ma kontrolę nad tym, które transakcje trafiają do bloku.

Teraz wyobraź sobie, że koszty walidacji byłyby wyższe. Nie ma ograniczeń co do liczby łańcuchów kosmicznych, które można utworzyć. I chociaż nie są one powiązane cenowo z bitcoinami, jak inne projekty, każdy z nich, który ma znaczną wartość, byłby tego wart, aby kopalnie wydobywcze (i górnicy) działały w celu uzyskania większych pieniędzy. Górnicy, którzy by to zrobili, byliby bardziej konkurencyjni niż ci, którzy tego nie zrobili, a jeśli wydobycie w dłuższej perspektywie stanie się branżą z marżami zysku, które są jak brzytwa, staje się to w rzeczywistości wymogiem wydobycia tych innych łańcuchów. Jeśli tego nie zrobisz, nie będziesz opłacalny. Górnicy, którzy je prowadzą, mogą podnieść koszty górników, którzy nie czerpią zysków i nadal zarabiają, wypychając pozostałych z rynku.

Pamiętaj też, że nie ma ograniczeń co do kosztów walidacji łańcucha bocznego. Sprawdzanie poprawności niektórych funkcji kryptograficznych, dowolnej złożoności, takiej jak Ethereum, a nawet pełnej gigablokowej głupoty, takiej jak BSV, może być bardzo kosztowne. Softchain ma dokładnie takie samo ryzyko, oprócz zwiększenia kosztów walidacji zwykłych użytkowników korzystających z pełnych węzłów. Jedyną „ratunkową łaską”, jeśli chcesz to tak nazwać, jest wymóg aktywacji jednego łańcucha bocznego na raz za pomocą unikalnego softforka. Oznacza to przynajmniej, że każdy indywidualny wniosek i koszt jego walidacji będą dokładnie sprawdzane przed aktywacją.

Łańcuchy napędowe? Twierdzą, że rozwiązują ten problem, ale w rzeczywistości tego nie robią. Pojęcie łańcucha napędowego polega na tym, że twórca bloków ostatecznie płaci górnikom większość opłat za wydobycie ich bloków, zachowując tylko niewielką część dla siebie. Ta niewielka część w świecie marży zysku, która jest jak brzytwa, to większy zysk, który można osiągnąć, co ponownie sprowadza się do możliwości wyparcia innych górników z rynku, jeśli zrobisz to sam. Nawet jeśli założysz, że twórcy bloków drivechain nie zatrzymują żadnych opłat dla siebie, dając 100% górnikom, dlaczego mieliby to robić, gdyby nie było innego aspektu tego sidechaina, na którym mogliby zarabiać? To prawdopodobnie forma Wartość do wydobycia przez górnika (MEV), na których górnicy mogliby zarabiać, co miało ten sam efekt centralizacji. W dłuższej perspektywie każdy rodzaj zdecentralizowanej puli wydobywczej musiałby obejmować górników prowadzących wszystkie te węzły łańcucha bocznego oprócz węzła łańcucha głównego, co może okazać się bardzo nierealistyczną perspektywą dla górników na małą skalę. To stworzyłoby sztuczną podłogę ograniczającą zdecentralizowane wydobycie.

Tylko sfederowane łańcuchy boczne unikają tego scentralizowanego wpływu na wydobywanie bitcoinów, ponieważ w żaden sposób nie wchodzą w interakcje z górnikami, z wyjątkiem tego, że płacą opłaty górnikom za transakcje ustalające monety z łańcucha bocznego.

Ryzyko związane z kołkami i konsensusem

Proces wydobywania łańcuchów bocznych stanowi ryzyko dla centralizacji wydobycia, a proces blokowania i odblokowywania monet z kołka łańcucha bocznego może stanowić zagrożenie dla konsensusu. Kołki federacyjne i kołki jednokierunkowe nie stanowią poważnego zagrożenia dla konsensusu. W przypadku sfederowanego peg, ponieważ zasadniczo nie różni się niczym od wymiany powierniczej — możesz wpłacać depozyty i wycofywać się z nich — nie ma to żadnej fundamentalnej interakcji z procesem konsensusu, który ma miejsce na giełdach, a zatem nie stanowi nowego ryzyka. Pegi jednokierunkowe to po prostu sposób na spalenie bitcoina i uczynienie go nie do odzyskania. To nie jest ryzyko ani ingerencja w konsensus. Softchainy i drivechains jednak na różne sposoby stanowią zagrożenie dla konsensusu Bitcoin.

Softchainy stanowią bardzo wyraźne ryzyko konsensusu dla głównej sieci Bitcoin. Po pierwsze, podnosi to koszt walidacji na każdy dodany softchain dla węzłów tylko w łańcuchu głównym, a w zależności od rozmiaru bloków lub złożoności reguł, aby to zweryfikować, może to być marginalny wzrost lub dość drastyczny wzrost. Po drugie, jakikolwiek podział konsensusu spowodowany niedeterministycznym błędem może wpłynąć na łańcuch główny. Taki błąd był przyczyną rozłamu łańcucha miało to miejsce w 2013 roku. Ze względu na to, jak działa baza danych, której Bitcoin używa do obsługi odczytu i zapisu danych, niektórym węzłom „skończyłyby się” czasy odczytu i zapisu danych oraz unieważnienia inaczej nieprawidłowego bloku. Ponieważ te operacje były ograniczone w oparciu o indywidualne zasoby komputera, nie było spójnej sytuacji, która by to spowodowała, ponieważ zasoby poszczególnych węzłów są różne.

Taki incydent na softchainie stanowi ryzyko konsensusu dla głównego łańcucha ze względu na to, jak są ze sobą powiązane. Wreszcie, sposób zdefiniowania wymagań dotyczących trudności dla wydobycia softchaina może mieć ogromny wpływ na koszt walidacji węzłów tylko w łańcuchu głównym. Każde wykrycie łańcucha softchain wyzwala pobieranie i walidację każdego bloku aż do korzenia tego łańcucha, co w zależności od kosztów walidacji konkretnego łańcucha softchain może spowodować ogromny wzrost walidacji dla węzłów łańcucha głównego. Jeśli trudność wydobycia jest lub może nawet być zbyt niska w stosunku do procentu całkowitego hashowania Bitcoina, atakowanie Bitcoina poprzez tworzenie łańcuchów w softchain może stać się bardzo tanie, tylko po to, aby zwiększyć koszty węzła głównego łańcucha.

Łańcuchy napędowe stanowią bardziej subtelne ryzyko dla konsensusu. Jak omówiono powyżej, w rzeczywistości mają one dynamikę, podobnie jak inne projekty łańcuchów bocznych, które wywierają presję na dalszą centralizację wydobycia. Współdziała to bardzo słabo z faktem, że kołek to w zasadzie tylko górnicy, którzy mają całkowitą kontrolę nad monetami w łańcuchach napędowych; większość z nich może skutecznie robić, co chce, z monetami zamkniętymi w łańcuchach napędowych. Bezpieczeństwo wszystkich monet w łańcuchach napędowych zależy od tego, czy górnicy są wystarczająco zdecentralizowani, aby ataki 51% były niepraktyczne, ale jednocześnie stwarzają presję, która prawdopodobnie w dłuższej perspektywie zwiększy centralizację wydobycia.

Jeśli taka dynamika ma miejsce w przypadku łańcuchów napędowych, a górnicy kradną monety z kołka, dosłownie nie ma opcji dla użytkowników tego łańcucha bocznego, z wyjątkiem aktywowanego przez użytkownika soft forka (UASF), aby unieważnić ten kołek. Byłaby to zupełnie inna dynamika niż ostatnia UASF; w 2017 roku użytkownicy zasadniczo grali w grę w kurczaka, w której mieli monety po obu stronach widelca. Obie opcje były dostępne dla osób wspierających UASF. W przypadku, gdyby UASF powstrzymał kradzież łańcucha napędowego, użytkownicy nie mieliby dostępnych obu opcji. Tylko po stronie widelca UASF mieliby monety; w łańcuchu dziedzictwa nie mieliby nic. Dosłownie nie mają motywacji do powrotu do łańcucha dziedzictwa, jeśli UASF ulegnie awarii i spowoduje podział łańcucha.

Niektórzy twierdzą nawet, że górnicy powinni atakować pewne „złe” łańcuchy boczne (chociaż nie jest pewne, co oznacza „złe” w łańcuchu bocznym). Gdyby łańcuchy napędowe były szeroko stosowane, cała ta dynamika mogłaby rozdrobnić łańcuch bloków Bitcoina i osłabić jego efekt sieciowy. Ludzie, którzy padli ofiarą kradzieży łańcucha napędowego, mają wszelkie bodźce na świecie, aby trzymać widelec w ruchu, ponieważ pozwolenie mu umrzeć oznacza, że ​​stracili wszystko.

Zamotać

Byłoby niedbałem, gdybym nie wspomniał w tym utworze o sfederowanych łańcuchach bocznych; nie stanowią bezpośredniego zagrożenia dla konsensusu Bitcoina, jak inne projekty, ale ze swej natury są skutecznie zaufanym systemem. Użytkownicy takich systemów powinni głęboko zastanowić się, czy narzędzia oferowane przez takie systemy są warte kompromisu w modelu bezpieczeństwa i czy federacja obsługująca system jest na tyle godna zaufania, aby przechować ich fundusze.

W końcu żaden obecnie proponowany projekt łańcucha bocznego nie jest zbliżony do spełnienia pierwotnej obietnicy łańcuchów bocznych przedstawionej w oryginalnym dokumencie z 2014 roku. Wszystkie one albo nie zapewniają poziomu bezpieczeństwa pożądanego w mechanizmie ustalania, aby poruszać się między łańcuchami, albo stanowią zagrożenie dla samej głównej sieci Bitcoin. Być może pewnego dnia takie rzeczy jak dowody z wiedzą zerową mogą stanowić sposób na zaprojektowanie pega, który nie nałoży zwiększonych kosztów walidacji na węzły łańcucha głównego, takie jak softchain, ani nie będzie wymagał nowych założeń zaufania, takich jak łańcuchy napędowe lub łańcuchy sfederowane pod względem bezpieczeństwa funduszy użytkowników . Ale jak na razie nie ma takiego konkretnego projektu. Jeśli uważasz, że naprawdę pozbawione zaufania łańcuchy boczne są ważnym ulepszeniem dla Bitcoina, miejmy nadzieję, że pewnego dnia zostanie opracowana technologia do ich wdrożenia, ale obecnie nic nie jest blisko.

To jest gościnny post Shinobi. Wyrażone opinie są całkowicie ich własnymi i niekoniecznie odzwierciedlają opinie BTC Inc lub Bitcoin Magazine.

Znak czasu:

Więcej z Magazyn Bitcoin