Czy możliwe jest zhackowanie sieci blockchain kryptowalut?
Jednym z zagrożeń dla sieci blockchainowych, o których pisaliśmy wcześniej są ataki kwantowe. W tym artykule skupimy się jednak na innym potencjalnym problemie, który mógłby stanowić ryzyko dla ich działania.
Wprowadzenie do problemu.
Bitcoin wykorzystuje do swojego działania mechanizm rozproszonej księgi, która jest taka sama dla wszystkich użytkowników sieci. Są w niej rejestrowane wszystkie transakcje i tworzą one strukturę bloków, w której bloki te przyłączają się do istniejącego już łańcucha głównego. Każdy węzeł w sieci (tj. komputer o dużej mocy obliczeniowej, który odpowiada za wydobycie bloków i weryfikowanie poprawności transakcji) ma swoją kopię łańcucha bloków i konieczne jest, aby miał uzgodniony zestaw zasad z innymi węzłami, które pozwolą na niezawodność i spójność działania całej sieci. Takie porozumienie za pomocą którego węzły mogą spójnie oddziaływać między sobą zwane jest konsensusem zbiorowym.
Może zaistnieć sytuacja, gdy dwa bloki zostaną wydobyte w tym samym czasie i przyłączyć się do łańcucha głównego, który z nich więc zostanie uznany za "ważny"?
Wszystko będzie zależało od tego, do którego bloku zostanie przyłączony kolejny. Transakcje z tego bloku, który zostanie pominięty cofną się do tzw. mempoolu, czyli miejsca w którym znajdują się wszystkie niezweryfikowane transakcje, oczekujące na dołączenie do sieci. Jeśli transakcja pozostaje w nim zbyt długo (np. ze względu na duże obciążenie sieci oraz fakt, że użytkownik wybrał najniższą możliwą opłatę transakcyjną) to transakcja może zostać anulowana i środki wracają na portfel użytkownika. Transakcje są uważane w pełni za zweryfikowane, gdy do łańcucha dołączy się około 5-6 bloków przedłużających łańcuch główny. Istnieją również tzw. "punkty kontrolne" po przekroczeniu których zawartość bloków jest na stałe zapisywana w sieci i nie jesteśmy w stanie ich zmienić w żaden sposób.
Atak 51% - na czym polega?
Jest to potencjalny atak na sieć blockchain bitcoina (możliwy także w przypadku innych kryptowalut, wykorzystujących protokół proof-of-work) możliwy do wykonania, przy wykorzystaniu ponad 50% całkowitej mocy obliczeniowej sieci. Osoby organizujące taki atak mogłyby wstrzymać wstrzymać płatności wykonywane między określonymi użytkownikami, a nawet wszystkimi w sieci. Co ważniejsze, byłaby możliwość do cofania transakcji, które zostały zakończone i wydania monet, które się w nich znajdowały po raz drugi. Grupa węzłów mogłaby oddzielić się od reszty sieci, i nie przesyłać informacji na temat wykonanych postępów do reszty górników (49%). Spowoduje to, że tworzyłyby się dwie niezależne od siebie kopie łańcuchów. Atakująca grupa jako, że wykorzystuje większą moc obliczeniową będzie szybciej wydłużała swój łańcuch (do chwili gdy zmodyfikowana zostanie trudność wydobycia, tj. wzrośnie dla atakujących, a spadnie dla pozostałej części, ze względu na mniejszą moc obliczeniową). gdyby grupy te połączyły się ponownie to zgodnie z wcześniej omówioną zasadą, dłuższy łańcuch stanie się tym głównym, a pozostałem transakcje trafią do mempoolu i zostaną uznane za nieważne. Prowadzący atak więc mogą do tego czasu wejść w posiadanie towarów, za które de facto nie zapłacą.
Aktualnie żadna kopalnia nie jest nawet zbliżona do posiadania 50% całkowitej mocy wydobywczej w sieci i w przypadku bitcoina uzyskanie jej byłoby niezmiernie trudne, ze względu na dużą konkurencję. W przypadku innych kryptowalut istniały jednak przypadki takich ataków, co na jakiś czas zaburzało działanie ich sieci.
Atak możliwy jest również do wykonania w przypadku mniejszej mocy obliczeniowej, ale szansa że zakończy się powodzeniem jest o wiele mniejsza.
Bitcoina oraz litecoina możesz kupić w naszym kantorze kantorbitcoin.pl:
- Kupno bitcoin BTC – https://kantorbitcoin.pl/kupno-sprzedaz-bitcoin/
- Kupno litecoin LTC – https://kantorbitcoin.pl/kupno-sprzedaz-litecoin-ltc/
Kurs bitcoina możesz śledzić w naszym archiwum cenowym, które dostępne jest tutaj.