Blockchain zrewolucjonizował świat finansów, wprowadzając zdecentralizowany rejestr transakcji. Oferuje on przejrzystość i bezpieczeństwo, jednak nawet ta technologia nie jest całkowicie bezpieczna. Za jedno z najpoważniejszych zagrożeń uważany jest atak 51%. Co to jest i czy słusznie się go boimy?
Czym jest atak 51%
Atak 51% ma miejsce wtedy, gdy pojedynczy podmiot lub grupa kontroluje ponad 50% mocy obliczeniowej sieci i wykorzystuje ten fakt na swoją korzyść. Taka kontrola pozwala bowiem na manipulowanie transakcjami, co może prowadzić do wielu negatywnych konsekwencji, takich jak podwójne wydatkowanie (double spending) czy cenzurowanie transakcji.
Gdy napastnik dysponuje większą mocą obliczeniową niż wszyscy inni górnicy łącznie, kontroluje proces dodawania nowych bloków (kopania kryptowalut). Może wybierać, które transakcje umieszczać w blokach, a które wykluczać. Jeśli przez dłuższy czas utrzymuje kontrolę, może nawet modyfikować już zapisane bloki, cofając transakcje lub zmieniając ich adresatów, a nawet jest w stanie zatrzymać działanie całej sieci.
Atak 51% z zasady dotyczy sieci Proof of Work, choć nieco podobny mechanizm można zastosować także w sieciach Proof of Stake.
Różnice między atakiem 51%, double spending i hardforkiem
Warto je wyjaśnić, gdyż czasami są one mylone ze sobą.
- atak 51%. Znany także jako atak większościowy (majority attack). Oznacza tymczasowe przejęcie kontroli nad wydobyciem bloków dzięki kontroli większości hashrate
- podwójne wydatkowanie. Sytuacja, w której te same środki są wydawane więcej niż jeden raz, możliwa w przypadku skutecznego ataku 51%.
- hardfork. Może być efektem ataku 51%, kiedy uczciwi górnicy odmawiają akceptacji bloków publikowanych przez atakującego. Jest to jednak tylko jeden z wielu możliwych powodów takiego hardforka.
Niekiedy wszystkie te trzy zjawiska mogą wystąpić jednocześnie.
Kiedy atak 51% jest prawdopodobny?
Prawdopodobieństwo ataku zależy od wielu czynników:
- Moc obliczeniowa sieci: im jest mniejsza, tym łatwiej uzyskać kontrolę nad siecią.
- Decentralizacja: im bardziej zdecentralizowana sieć, tym trudniej zgromadzić wystarczającą moc.
- Wartość kryptowaluty: im jest wyższa, tym bardziej opłacalny staje się atak.
- Ochrona sieci: istnieją mechanizmy, mogące utrudnić przejęcie kontroli, np. konsensus hybrydowy.
Konsekwencje udanego ataku
Udany atak 51% może mieć poważne skutki dla sieci i jej użytkowników, takie jak:
- Podwójne wydatkowanie: napastnik może dokonać zakupów, otrzymać aktywa, następnie anulować swoje wcześniejsze transakcje i ponownie wydać te same monety.
- Cenzura transakcji: może próbować uniemożliwić wykonywanie transakcji przez innych użytkowników.
- Modyfikacja wcześniej utworzonych bloków: w efekcie powstają sprzeczne wersje historii ostatnich transakcji.
- Zakłócenie działania sieci: może spowolnić lub zatrzymać działanie sieci, zalewając ją pustymi blokami.
Następstwem takich działań może być utrata zaufania użytkowników. Następuje spadek wartości kryptowaluty. Wielu użytkowników i deweloperów porzuca sieć, co prowadzi do spadku jej aktywności i płynności finansowej monety.
Jeśli napastnikowi udaje się utrzymać kontrolę dłużej, często stara się on także wymusić okup za odblokowanie sieci.
Lista ważniejszych ataków 51%
O ile Bitcoin z uwagi na swoją wielkość jest dobrze chroniony, wiele mniejszych blockchainów padło ofiarą ataków 51%.
- Bitcoin Gold (BTG). W 2018 i później kilkukrotnie padł ofiarą ataku, tracąc przeszło 20 milionów dolarów.
- Grin (GRIN). W 2020 nieznany atakujący uzyskał 58% hashrate sieci, co pozwoliło mu na reorganizację bloków.
- Ethereum Classic (ETC). W sierpniu 2020 doświadczyła trzech kolejnych ataków, co skłoniło giełdy do zablokowania handlu ETC.
- Bitcoin SV (BSV). W sierpniu 2021 również został zaatakowany trzykrotnie. Nie podano wielkości strat finansowych.
- Firo (FIRO): zaatakowana w styczniu 2021. Atakujący zreorganizowali setki bloków, powodując zakłócenia i duży spadek cen monety
W reakcji na te ataki wiele projektów blockchain zaczęło wprowadzać dodatkowe mechanizmy zabezpieczające oraz zmieniać mechanizmy konsensusu.
Z tego powodu klasyczne ataki 51% stały się rzadsze, pojawiły się jednak ich nowe formy. Przykładem może być atak na Ronin Network (RON) w marcu 2022, gdzie przejęcie kontroli nad 5 z 9 walidatorów pozwoliło na autoryzację nieuczciwych transakcji na przeszło 600 milionów dolarów.
Chroni nas demokracja
Wielu komentatorów zapomina, że choć kontrola większości mocy obliczeniowej jest niezbędna do ataku 51%, nie jest ona jeszcze warunkiem wystarczającym do przejęcia kontroli nad siecią.
Kluczową, choć nie zawsze docenianą rolę w obronie przed takim atakiem pełnią tysiące zdecentralizowanych węzłów sieci. To one bowiem:
- sprawdzają każdą transakcję pod kątem jej zgodności z protokołem
- odrzucają bloki wygenerowane przez górników niezgodne z zasadami
- przechowują pełną kopię łańcucha bloków, pozwalając na sprawdzanie historii
- w przypadku wykrycia podejrzanej aktywności przekazują informacje innym węzłom
- wspólnie definiują i egzekwują zasady konsensusu sieci
- mogą wdrożyć aktualizacje oprogramowania w celu przeciwdziałania zagrożeniu
Nawet, jeśli atakujący kontroluje większość mocy obliczeniowej, nadal musi przestrzegać zasad ustalonych przez węzły i zapisanych w protokole. Dodatkowo, użytkownicy korzystający z własnych węzłów mają bezpośredni dostęp do niezmanipulowanych informacji o stanie sieci.
Atakujący musiałby przekonać lub oszukać znaczną część operatorów węzłów dokonujących walidacji, aby osiągnąć zamierzone skutki. Z tego względu tak ważna jest decentralizacja sieci.
Prewencja i obrona przed atakiem 51%
Istnieje wiele sposobów na zapobieganie atakom 51% i ochronę sieci blockchain. Do najważniejszych należą:
- Zwiększenie mocy obliczeniowej. Im większy hashrate, tym trudniej uzyskać kontrolę nad wydobyciem. Sieci PoW zachęcają więc użytkowników do kopania kryptowaluty.
- Zwiększenie decentralizacji. Im więcej węzłów walidujących, tym trudniej opanować sieć. Służy temu ułatwienie uruchamiania węzłów przez użytkowników oraz ich nagradzanie.
- Hybrydowy model konsensusu. Połączenie PoW z PoS lub innym modelem konsensusu. W ten sposób działa np. Decred, gdzie każdy wydobyty przez górników blok musi zostać zatwierdzony przez losowo wybraną grupę użytkowników, stakujących DCR.
- Wprowadzenie mechanizmów ochrony. Może to być np. Adaptive Block Size (uniemożliwia zalewania sieci dużymi blokami) lub Delayed Payment (opóźnione zatwierdzanie płatności).
- Monitorowanie sieci i współpraca społeczności. Pozwala na wczesne wykrycie próby ataku oraz natychmiastową reakcję, np. w postaci banowania określonych górników lub przeprowadzenia hardforka.
Subtelny atak 51%
Jak widać, nie jest prosto przejąć kontrolę nad dużą siecią PoW. Być może zatem, zamiast atakować wprost, zastosować bardziej wyrafinowane metody? Oprócz klasycznego ataku 51%, istnieją bardziej subtelne zagrożenia, takie jak:
Atak na pulę wydobywczą
Przejęcie kontroli nad dużą pulą wydobywczą mogłoby dać napastnikowi przewagę i umożliwić mu manipulację transakcjami. Jest to o tyle ułatwione, że dwie największe pule BTC (Foundry i AntPool) kontrolują łącznie ponad 50% wydobycia.
Jednak nie jest to takie łatwe. Jeśli pule zdecydują się zaatakować sieć, będą proponować bloki różne od tych kopanych przez uczciwych górników. Problem zostanie natychmiast zauważony, sprawa stanie się głośna i większość górników przeniesie swoje maszyny do pul pracujących zgodnie z protokołem. Atakujący stracą większość hashrate oraz swoją reputacje i zaufanie użytkowników.
Atak 51% poprzez kontrolę węzłów
Jak wspomnieliśmy, atak 51% może zostać zatrzymany przez uczciwą sieć węzłów walidacyjnych, które weryfikują transakcje. Czy da się to obejść?
Wyjściem może być uruchomienie ogromnej liczby własnych węzłów, akceptujących fałszywe bloki, wybijane przez skorumpowanych górników. Rodzi to jednak ten sam problem finansowy i logistyczny, co kontrola dużej ilości górników. Ponadto nagły wzrost liczby węzłów lub ich nietypowe zachowanie stałoby się przyczyną ogłoszenia alarmu.
Atak poprzez wykorzystanie luk w kodzie
Taki atak jest możliwy, jednak mało prawdopodobny. Teoretycznie można wykorzystać błędy w kodzie odpowiedzialnym za weryfikację bloków, luki pozwalające na przepełnienie bufora czy problemy z synchronizacją sieci.
W przypadku BTC jest to jednak mało prawdopodobne. Kod jest starannie analizowany przed każdą aktualizacją. Jego transparentność pozwala na sprawdzenie go przez wszystkich zainteresowanych. Zmiany kodu wprowadzane są powoli i ostrożnie. W przypadku wykrycia poważnej luki, społeczność szybko reaguje, wydając patche i aktualizacje.
W przeszłości wykryto kilka poważnych luk, jak CVE-2018-17144 (2018) czy Inflation bug (2010). Zostały one jednak błyskawicznie wykryte i naprawione.
W swojej historii (15 lat) Bitcoin nigdy nie został skutecznie zhakowany w drodze ataku 51%.
Nawet udany atak nie zniszczy wszystkiego
Choć atak 51% może mieć bardzo poważne skutki, jego niszczący potencjał ma granice.
- Zmiana reguł protokołu. Atak 51% nie pozwala na modyfikację fundamentalnych reguł protokołu blockchain, takich jak algorytm konsensusu. Te zasady są zakodowane w oprogramowaniu węzłów i nie mogą być zmienione bez ich zgody. Z tego samego powodu nie musimy obawiać się tworzenia monet z powietrza czy zmiany wysokości nagród blokowych.
- Cofanie starych transakcji. Napastnik nie może cofnąć transakcji, które zostały dawno zatwierdzone i „przykryte” wieloma nowymi blokami. O ile jest w stanie sfałszować bloki z ostatnich minut lub godzin, wcześniejsze pozostają bezpieczne.
- Cenzura transakcji. Chociaż atakujący stara się uniemożliwiać zatwierdzanie części transakcji, nie może ich całkowicie zablokować. Inne węzły nadal będą składować te transakcje w mempool i zostaną one zapisane w bloku po odparciu ataku.
Czy USA i Chiny mogą zniszczyć Bitcoina?
Teoretycznie Bitcoin jest podatny na atak 51%. W praktyce chroni go ogromny hashrate sieci, przez co uzyskanie wystarczającej mocy obliczeniowej jest prawie niemożliwe.
Skuteczny atak wymagałby gigantycznych zasobów, pozostających poza zasięgiem nawet bogatych korporacji. Czy jednak BTC mógłby zostać zniszczony, gdyby zależało na tym rządom USA lub Chin?
W połowie lipca 2024 całkowity hashrate sieci Bitcoin wynosi około 600 exahaszy na sekundę (EH/s). Już zgromadzenie ponad 300 EH/s byłoby niezwykle trudne, a i tak okazałoby się daleko niewystarczające. Atakujący musiałby bowiem uzyskać więcej niż 600 EH/s, aby kontrolować ponad połowę mocy powiększonej (600+600=1200) sieci.
Koszty sprzętu i energii potrzebne do przeprowadzenia takiego ataku byłyby astronomiczne, szacowane na miliardy dolarów. Co więcej, zdobycie wystarczającej ilości specjalizowanych koparek ASIC byłoby praktycznie niemożliwe w czasie krótszym niż parę lat. Takie zakupy nie mogły by także pozostać niezauważone, podobnie jak nagły wzrost mocy obliczeniowej w sieci.
Zniszczenie Bitcoina było banalnie proste zaraz po jego stworzeniu, kiedy sieć zabezpieczona była minimalną mocą obliczeniową. Na szczęście nikt nie traktował go poważnie aż do momentu, kiedy był wystarczająco silny.
W wypadku mniejszych altcoinów moc obliczeniową można zakupić na wolnym rynku, jednak rynek mocy dla BTC jest absolutnie niewystarczający.
Oprócz kosztów ekonomicznych, atak 51% wiąże się z ogromnymi wyzwaniami logistycznymi. Koordynacja działań na tak dużą skalę, synchronizacja ataku i utrzymanie kontroli nad siecią przez dłuższy czas stanowią ogromne wyzwanie, nawet dla państwa dysponującego znacznymi zasobami.
Dodatkowo, w przypadku wykrycia próby ataku, społeczność mogłaby podjąć działania obronne, wykonując np. awaryjny hardfork lub banując wrogich górników. Jeśli przegłosowano by także zmianę modelu konsensusu, atakujący zostałby z milionami nieprzydatnych już koparek. Szczegółową analizę takiego scenariusza możemy znaleźć np. w artykule CoinTelegraph.
Sukces ataku z kolei doprowadziłby do ogromnego spadku wartości Bitcoina, czyniąc przedsięwzięcie nieopłacalnym.
Atak na BTC z przyczyn ekonomicznych jest irracjonalny. Jeśli jednak jego celem nie byłoby przejęcie, ale zniszczenie BTC, rzecz zaczyna wyglądać bardziej sensownie. Na szczęście nawet mocarstwa nie mają takich możliwości… przynajmniej do momentu wynalezienia komputerów kwantowych.
Czy atak 51% na Proof of Stake jest możliwy?
W kontekście PoS, atak 51% odnosi się do sytuacji, w której podmiot lub grupa podmiotów kontroluje ponad połowę stakowanych tokenów lub głosów w sieci. Potencjał atakującego jest więc określany nie przez moc obliczeniową, ale liczbę tokenów, które kontroluje.
Największa sieć PoS, Ethereum obecnie używa progu 66% (2/3) do osiągnięcia konsensusu, co czyni atak ekstremalnie trudnym, zaś użyte do niego monety zostałyby bezpowrotnie utracone.
Zaatakowanie sieci PoS jest technicznie możliwe, jednak bardzo kosztowne. Potencjalne metody ataku to:
- Akumulacja tokenów – zgromadzenie znacznej ich ilości, ale zarazem wystawienie się na ryzyko slashingu.
- Przejęcie kontroli nad stakeholderami – atak na portfele dużych stakerów, bardzo wymagający technicznie.
- Manipulacja mechanizmem delegacji – wykorzystanie systemu przez kilku walidatorów o złych intencjach
- Exploit w smartkontraktach stakingowych – wykorzystanie luk, trudne w audytowanych kontraktach.
- Atak typu „Nothing at Stake” – stakowanie na wielu konkurencyjnych łańcuchach jednocześnie.
- Atak na mechanizm wyboru walidatorów – manipulacja procesem ich selekcji.
Co do zasady, dobrze zaprojektowany i regularnie audytowany blockchain PoS jest wysoce odporny na atak 51%.
Wypadkiem szczególnym byłoby przeprowadzenie ataku po zajęciu ogromnej, lewarowanej pozycji short. Spadek wartości monety mógłby przynieść zyski przekraczające koszty, jednak jednocześnie wskazałby konta podejrzanych o taki atak.
Jak widać, udany atak 51% wcale nie jest tak łatwy do przeprowadzenie, przynajmniej jeśli chodzi o duże protokoły. Wciąż jednak pozostaje problemem małych sieci PoW. Obok BTC czy ETH najlepiej zabezpieczone wydają się więc monety wykorzystujące model hybrydowy, jak np. DCR.
FAQ – najczęstsze pytania o atak 51%
Czym jest atak 51%?
Jest to rodzaj ataku na blockchain, w którym napastnik przejmuje kontrolę nad więcej niż połową mocy obliczeniowej sieci, co umożliwia mu manipulowanie blokami i transakcjami.
Które sieci są najbardziej narażone na takie ataki?
Zagrożone są zwłaszcza blockchainy PoW o niewielkiej mocy obliczeniowej i liczbie aktywnych węzłów. Im sieć jest większa, tym trudniejsza do zdominowania.
Jaki był najskuteczniejszy atak 51%?
Choć finansowo skromny, za najskuteczniejszy uważany jest atak na Ethereum Classic (ETC) w styczniu 2019 roku. Atakujący przeprowadził serię głębokich reorganizacji łańcucha, z których największa objęła prawie 5000 bloków.
Jak długo może trwać atak 51%?
Jest to uzależnione od wielkości konkretnej sieci. O ile małe mogą zostać przejęte na długo, duże szybko pozbędą się napastnika. Potrzebuje on bowiem ogromnych zasobów, aby kontynuować atak i wciąż mieć większy hashrate, niż mobilizująca się społeczność.
Inwestowanie jest ryzykowne. Inwestuj odpowiedzialnie.