Tekst oryginalny: „Ramy ryzyka L2Bridge”
Autor: bartek.eth
Vaibhav Chellani z Socket i ja chcieliśmy zaproponować architekturę ryzyka do oceny profili bezpieczeństwa różnych architektur mostów.
Podobnie jak w przypadku różnych ram ryzyka L2, naszym ogólnym celem jest możliwość szybkiego „kategoryzowania” rozwiązania do określonej kategorii rozwiązań o podobnych cechach, a jednocześnie możliwość przedstawienia użytkownikom wystarczająco szczegółowo, w jaki sposób będą korzystać z tych pomostów Jakie założenia dotyczące bezpieczeństwa należy przyjąć.
Skupiamy się głównie na mostach pomiędzy Ethereum a innymi łańcuchami, o czym poinformujemy wkrótce na l2beat.com (Nota tłumacza: kolumna mostów jest teraz online), ale podstawowe rozumowanie dotyczące bezpieczeństwa tych rozwiązań ma również zastosowanie. Do mostkowania dowolnego łańcucha do innego łańcucha. W tej chwili czekamy na opinie szerszej społeczności na temat proponowanych ram.
Typ mostu
W przypadku użytkowników końcowych mostkowanie aktywów oznacza otrzymanie depozytu określonego zasobu z łańcucha źródłowego i wysłanie tego zasobu do użytkownika w łańcuchu docelowym.
Na przykład typowy proces pomostowy polega na tym, że Alicja przekazuje środki na rzecz umowy pomostowej w łańcuchu A, a następnie Alicja otrzymuje środki z mostu w łańcuchu B.
Ogólnie rzecz biorąc, proces ten przebiega na dwa sposoby:
Mosty tokenowe oparte na komunikatach — mosty te umożliwiają przepływ płynności przez łańcuchy w formie komunikatów. Ogólnie rzecz biorąc, umożliwiają one wybicie zasobu w łańcuchu docelowym po jego zablokowaniu lub zniszczeniu w łańcuchu źródłowym. Przykłady: most zbiorczy, most natywny Polygon, Anyswap (anyCall) i sieć Axelar. Sieć płynności - Istnieją również pomosty, które pozwolą na wykupienie części wybitych aktywów. Umożliwiają użytkownikom przenoszenie aktywów do innych sieci, przy założeniu, że aktywa te zostały wcześniej przekazane za pośrednictwem „Message Bridge”. Przykłady: Connecxt oparty na Nomad Bridge, Hop oparty na Hop Optimistic Bridge, niektóre inne HTLC (kontrakt Hash Time-Lock, kontrakt hash time lock) i transfery warunkowe (takie jak nova itp.).
Bezpieczeństwo mostów przekazywania wiadomości
W tej sekcji postaramy się wyjaśnić różne sposoby sprawdzania poprawności komunikatów międzyłańcuchowych, które są używane przez wiele protokołów mostowych. Jak pokazano na powyższym rysunku, mostkowanie tokenów wykorzystuje bezpieczeństwo mostkowania polegającego na przekazywaniu komunikatów.
Klient lekki weryfikuje ważność stanu
Opis: Most weryfikujący ważność zmiany stanu łańcucha źródłowego w łańcuchu docelowym. Ten proces weryfikacji realizowany jest poprzez dowód wiedzy zerowej (procesowi zmiany stanu towarzyszy generowanie dowodu zk) lub system odporny na oszustwa (pozwalający niezależnym weryfikatorom kwestionować ważność nowego korzenia stanu).
Przykład: Wszystkie pakiety zbiorcze są tutaj przykładami, L1 zweryfikuje przejście stanu L2 poprzez FraudProof (odporność na oszustwa) lub ValidityProof (dowód ważności).
Lekki konsensus w sprawie weryfikacji klienta
Opis: Most weryfikujący konsensus łańcucha źródłowego w łańcuchu docelowym. Zależy to od mechanizmu konsensusu stosowanego w łańcuchu źródeł i zwykle obejmuje sprawdzenie podpisu kworum obecnego komitetu walidującego, jeśli łańcuch źródłowy wykorzystuje protokół konsensusu w sprawie propozycji i głosowania w stylu PBFT (taki jak Tendermint, HotStuff, Casper FFG protokół). Alternatywnie, jeśli łańcuch źródłowy wykorzystuje protokół PoW lub protokół PoS w stylu „najdłuższego łańcucha” (taki jak Ouroboros, ETH 2.0 LMD Ghost itp.), użyj odpowiednich reguł rozwidlania, aby sprawdzić najdłuższy łańcuch.
Przykłady: mostkowanie NEAR Rainbow (ignorowanie komponentu optymistycznego związanego ze złożonością procesu weryfikacji mechanizmu podpisu NEAR), mostkowanie PoS firmy Polygon (sprawdzanie konsensusu łańcucha Heimdall) i Cosmos IBC (weryfikacja podpisu innego łańcucha Cosmos).
zestaw zewnętrznego walidatora
Opis: Użyj zewnętrznych walidatorów jako pomostów do źródła prawdy, to znaczy walidatorów tworzących niezależny komitet, a nie walidatorów w łańcuchu źródłowym i docelowym. W zależności od implementacji stosowanej przez tych walidatorów, mogą oni używać MultiSig (multi-signature), uruchamiać algorytm konsensusu (zwykle jeden z klasy propozycji i głosowania), używać mechanizmu Threshold Signature (TSS, mechanizm podpisu progowego) lub SGX itp. ...bez względu na to, jakiej technologii używają, podlegają tej metodzie weryfikacji.
Przykłady użycia: Wormmhole, Multichain, Axelar, DeBridge, Synapse, Stargate.
optymistyczna weryfikacja
Opis: Most z okresem wyzwania (okres wyzwania, przyp. tłumacza: odnosi się do okresu, podczas którego inni walidatorzy mogą kwestionować ważność komunikatu mostu, gdy uznają go za nieważny).
Uczciwa strona w tego rodzaju weryfikacji unika w tym okresie uwzględniania fałszywych informacji. Należy jednak wziąć pod uwagę kilka kluczowych parametrów:
Czas trwania wyzwania: Im dłuższy, tym lepszy Rozmiar zestawu obserwatora: Nie wymaga pozwolenia > Wymagane pozwolenie
Przykłady: Hop Protocol, Connext Amarok, Across, Nomad Token Bridge.
Metoda uwierzytelniania hybrydowego
Opis: Istnieje struktura, która łączy powyższe metody weryfikacji.
Bezpieczeństwo sieci płynnościowej
Oprócz faktycznego przesyłania aktywów między łańcuchami istnieje inna metoda: wymiana między łańcuchami (zamiana). Wymiany między łańcuchami można dokonać wyłącznie poprzez zmianę właściciela bez przenoszenia aktywów między łańcuchami. (Uwaga tłumacza: Kiedy aktywa jednej strony zmieniają właściciela, stają się własnością innej strony, to znaczy zmienia się właściciel aktywów.)
Weźmy prosty przykład: Alicja w łańcuchu A chce przenieść aktywa do łańcucha B. Bob (dostawca płynności, LP) posiada już aktywa o tej samej wartości w łańcuchu B. Wykorzystuje swoje aktywa w łańcuchu B, aby świadczyć usługi wymiany salda Alicji w łańcuchu A i pobiera opłaty za usługi. Ostatecznie Alicja otrzyma zasób w łańcuchu B, a Bob otrzyma zasób + opłatę za usługę w łańcuchu A.
Ta część opisuje jedynie bezpieczeństwo protokołu „wymiany”, czyli prawdopodobieństwo, że LP ucieknie z pieniędzmi po przyjęciu Twojego depozytu w łańcuchu źródłowym. Te zasoby wymiany są zabezpieczone mostem przekazującym wiadomości, który je tworzy.
Istnieją również inne sposoby wymiany aktywów:
HTLC: Znany również jako kontrakt blokady czasu mieszania i może być używany do atomowej wymiany aktywów między dwiema stronami w całym łańcuchu. Zwykle od użytkownika wymagane są tylko dwa kroki, jeden polega na zablokowaniu, a drugi na odblokowaniu. Możliwy scenariusz niepowodzenia polega na zablokowaniu środków na ustalony okres „uśpienia”. Przykłady: Connext NXTP, Liqualit. Transfer warunkowy: umożliwia LP korzystanie ze skrótowych mostków komunikacyjnych, umożliwiając LP natychmiastowe dostarczanie środków użytkownikom końcowym i otrzymywanie środków z mostka komunikacyjnego za każdym razem, gdy środki są mostkowane. W przypadku niepowodzenia i braku LP zapewniających płynność, aktywowana zostanie ścieżka wolna. Przykłady: Hop, Connext Amarok, Teleport MakerDAO. Zewnętrzny walidator: umożliwia użytkownikom przesyłanie środków do zaufanego dostawcy pomostu, który obiecuje udostępnić środki innej sieci. Możliwy scenariusz niepowodzenia zakłada utratę środków. Przykład: Binance
opór cenzury
Przyjrzymy się założeniom bezpieczeństwa dotyczącym prawdopodobieństwa, że pojedyncza wiadomość wysłana przez most zostanie ocenzurowana. W praktyce sprawdzimy także, czy pojedyncza wiadomość (przelew tokena) zostanie ocenzurowana lub zignorowana przez most, a jeśli tak, to jakie będą konsekwencje dla środków użytkownika (czy środki zostaną zwrócone użytkownikowi, czy też zostaną być „zatrzymany”, mieć status „Transfer w toku”).
Typowe rozwiązanie:
Skorzystaj z odporności łańcucha bazowego na cenzurę (np. jakiś pakiet zbiorczy) Polegaj na uczciwości zestawu walidatorów
Ogólnie aktywny błąd
Jeśli chodzi o ogólne awarie żywotności, przyjrzymy się konsekwencjom „wyłączenia” mostu. Na przykład w przypadku mostu korzystającego z zewnętrznego zestawu walidatorów moglibyśmy przyjrzeć się bezpieczeństwu środków użytkownika w przypadku, gdy te walidatory były offline przez dłuższy czas, być może na czas nieokreślony. Typowe sytuacje, które mogą wystąpić, obejmują:
Aktywuj wolną ścieżkę: domyślnym trybem jest wolna ścieżka i nie powoduje utraty środków. Stawiaj samodzielnie: użytkownicy mogą stawiać, aby uczestniczyć w sieci, zostać walidatorem i samodzielnie obsługiwać zablokowane transakcje transferowe. Zamrożenie: zawiesza system i nie może działać do czasu operator mostu wchodzi w tryb online.
płynność
W tej sekcji postaramy się przeanalizować płynność dostępną na aktywach pomostowych. Czy most może generować aktywa, czy wymaga LP, czy użytkownicy mogą zawsze wypłacić lub przenieść dowolną ilość wybranych przez siebie tokenów, czy też są zależni od zewnętrznych LP i mostowi może „zabraknąć środków”.
Nieograniczony (most może generować tokeny natywne/autorytatywne) Dozwolony (płynność zapewnia operator mostu) Bez zezwolenia (płynność może zapewnić każdy LP)
Dodatkowe przemyślenia i wskaźniki Możliwość aktualizacji Dozwoleni aktorzy Wolumen transferów w ciągu ostatnich 24 godzin Unikalne przelewy w ciągu ostatnich 24 godzin Dostępna płynność Obsługiwane tokeny/blockchains
