51% ataku w technologii Blockchain [Wyjaśnienie]
Opublikowany: 2019-01-17Dzięki zaprojektowaniu technologii wiemy, że blockchain jest odporny na ataki ze strony poszczególnych członków sieci. Co się jednak stanie, jeśli blockchain zostanie zaatakowany przez dużą grupę uczestników? Dokładniej, co się stanie, jeśli grupie uda się przejąć kontrolę nad ponad 50% mocy obliczeniowej łańcucha bloków?
Taki scenariusz jest znany jako atak 51% i jest to jedna z niewielu prawdziwych luk w blockchain.
Ucz się programów inżynierii oprogramowania z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Aby zrozumieć problemy, jakie stwarza atak 51%, musimy wrócić do podstaw łańcucha bloków i przypomnieć sobie proces dodawania nowego bloku do łańcucha. Członkowie sieci konkurują o to, aby jako pierwsi obliczyli ważną pieczęć dla bloku i odebrali nagrodę. Nieuchronnie grupa osób kontrolujących ponad połowę mocy obliczeniowej sieci może zmonopolizować ten proces i odebrać sobie wszystkie nagrody. Taka sytuacja pozwala tej grupie być jedynym podmiotem, który może skorzystać z nagród blockchain, uniemożliwiając innym członkom dodawanie bloków do łańcucha. Jest to możliwe, ponieważ zasada większości jest jedną z podstawowych koncepcji łańcucha bloków.
Inną możliwą konsekwencją ataku 51% jest podwójne wydatki i jest to znacznie bardziej szkodliwe niż poprzednie. Podwójne wydawanie ma miejsce, gdy grupa osób pomyślnie odwraca zakończone transakcje w łańcuchu bloków, umożliwiając im odzyskanie pieniędzy i ponowne ich wydanie. To cyfrowy odpowiednik podrabiania . Jest to możliwe podczas ataku 51% ze względu na fundamentalną ideę, że najdłuższy łańcuch łańcucha bloków to prawdziwy. Jak na ironię, jest to to samo zabezpieczenie, które uniemożliwia podwójne wydatki, gdy próbuje go zwykły członek sieci.
7 sposobów, w jakie Blockchain rewolucjonizuje przemysł motoryzacyjny
Aby zrozumieć, jak może dojść do podwójnego wydatkowania, rozważmy następujący przykład. Wyobraź sobie sieć, w której istnieje sojusz, który kontroluje ponad połowę mocy obliczeniowej sieci. Załóżmy, że A, członek sojuszu, kupuje dom od B, zwykłego członka łańcucha bloków.
Przelew pieniędzy z A do B jest rejestrowany przez każdego zwykłego członka sieci, ale wszyscy członkowie sojuszu potajemnie nie dodają tej transakcji do swoich rejestrów. Trwający blok jest następnie uzupełniany i dodawany do łańcucha przez uczciwe jednostki, ale potajemnie ignorowany przez sojusz. W sieci istnieją obecnie dwie wersje łańcucha bloków – aktualna z zarejestrowaną transakcją i fałszywa. Od tego momentu prawdziwy blockchain jest dłuższy i akceptowany przez sieć, więc fałszywa wersja jest tymczasowo utrzymywana w tajemnicy przez sojusz.
Sojusz teraz nadal rejestruje bieżące transakcje w sieci, a także prywatnie przeprowadza między sobą bezsensowne transakcje. Transakcje te nie są ogłaszane w sieci i umożliwiają sojuszowi generowanie bloków w szybszym tempie niż prawdziwy blockchain. Ponieważ sojusz posiada ponad połowę mocy obliczeniowej sieci, możliwe jest dodawanie bloków do fałszywego blockchaina szybciej niż bloki dodawane do prawdziwego blockchaina.
W pewnym momencie długość fałszywego blockchaina przekracza długość prawdziwego blockchaina, a sojusz rozgłasza to teraz w całej sieci. Sieć jest następnie zmuszona do zaakceptowania tej wersji łańcucha bloków, ponieważ jest to najdłuższa wersja, a transakcja przeprowadzana między A i B jest skutecznie odwracana, co pozwala A na wydanie tych samych pieniędzy na coś innego.
Co to jest technologia Blockchain? [Wyjaśnione]
W ten sposób sojusz może zmonopolizować pobieranie nagród i podwójnie wydawać pieniądze. Mogą również blokować transakcje innych członków, stosując procedurę podobną do podwójnego wydatkowania. Nie mogą jednak sfałszować nowej transakcji między członkami zwykłymi, ponieważ wymaga to kluczy prywatnych członków, między którymi odbywa się transakcja. Dosyć trudno jest im również modyfikować bloki, które zostały już zapisane w łańcuchu bloków, ponieważ wymaga to znacznej większości mocy obliczeniowej łańcucha bloków, aby była wykonalna. Im dalej klocki w łańcuchu, tym są bezpieczniejsze.
Słabości łańcucha bloków ujawnione przez atak 51% prowadzą nas do wniosku, że im więcej węzłów w sieci, tym jest ona bezpieczniejsza. Dzieje się tak po prostu dlatego, że znacznie łatwiej zdobyć większość w sieci 10 osób niż w sieci miliona. Aby konkurować z mocą obliczeniową rozproszonej sieci z węzłami na całym świecie, zwykła osoba musiałaby wydać ogromne ilości zasobów w postaci pieniędzy, energii elektrycznej i czasu lub stworzyć sojusz, który jest zbyt duży i rozproszony, aby skutecznie się organizować .
Ogólnie rzecz biorąc, największe łańcuchy bloków są dość bezpieczne przed atakiem 51%. Jednak w przeszłości było kilka znaczących przypadków 51% ataków w znanych łańcuchach blokowych. Na przykład ghash.io, pula wydobywcza w sieci bitcoin, przez krótki czas kontrolowała ponad połowę mocy obliczeniowej blockchaina w lipcu 2014 r., co spowodowało, że pula dobrowolnie zrzekła się części swoich udziałów, aby nie zmonopolizować wydobywania kryptowaluty. Bitcoin Gold nie miał tyle szczęścia, gdy w maju 2018 r. przeżył atak 51%, a złośliwym hakerom udało się dwukrotnie wydać kryptowalutę o wartości ponad 18 milionów dolarów.
Rosnące zapotrzebowanie na inżynierów oprogramowania w technologii Blockchain
Podstawy łańcucha bloków opierają się na założeniu, że większość w łańcuchu bloków jest uczciwa. To ujawnia największą słabość łańcucha bloków i jego główny prawdziwy obszar podatności. Nieuczciwa większość może spowodować ogromne szkody w blockchain.

Jeśli jesteś zainteresowany tworzeniem aplikacji blockchain od podstaw, sprawdź certyfikat Executive upGrad i IIIT-B w Blockchain z IIITB.
Co to jest atak 51%?
Kiedy grupa górników kontroluje ponad 50% szybkości wydobycia sieci, nazywa się to 51-procentowym atakiem na Blockchain. Atakujący, którzy kontrolują dużą część sieci, mogą uniemożliwić innym górnikom ukończenie bloków, blokując w ten sposób nagrywanie nowych bloków. Zmiana przeszłych bloków jest trudna, ponieważ wcześniejsze transakcje są na stałe zakodowane w oprogramowaniu Bitcoin. Im więcej jest wcześniejszych transakcji, tym trudniej je zmienić. Zmiana transakcji przed punktem kontrolnym, zakodowanym na stałe w oprogramowaniu Bitcoina, byłaby trudna. Krypton i Shift, dwa blockchainy oparte na Ethereum, zostały w przeszłości dotknięte 51 procentami ataków.
Jak działa atak 51%?
Bitcoin i inne kryptowaluty są zbudowane na łańcuchach bloków, które są rodzajem rozproszonej księgi. Każda transakcja w sieci kryptowaluty jest zapisywana w tych plikach cyfrowych, które są dostępne dla wszystkich użytkowników i ogółu społeczeństwa. W rezultacie żadne pieniądze nie mogą być użyte więcej niż jeden raz. Ponieważ fałszywa wersja księgi publicznej byłaby szybko identyfikowana i odrzucana przez użytkowników sieci, blok nie może być modyfikowany po jego ukończeniu lub wydobyciu. Kontrolując większość mocy obliczeniowej w sieci, atakujący lub grupa atakujących może przerwać proces rejestrowania nowych bloków. Mogą uniemożliwić innym górnikom ukończenie bloków, pozwalając im hipotetycznie zmonopolizować nowe wydobycie bloków i odebrać wszystkie zarobki. Tak działa atak 51%.

Czy można zhakować Blockchain?
Aby zhakować Blockchain, musisz mieć kontrolę nad co najmniej 51% jego mocy obliczeniowej. W rezultacie próba ataku polegającego na podwójnym wydatku na Blockchain jest uważana za próbę włamania. W rezultacie możemy wywnioskować, że łańcuchy bloków mogą zostać zhakowane. Nie jest to jednak ani proste, ani niedrogie zadanie w zależności od Blockchain. Kilka czynników wpływa na koszt 51-procentowego ataku na Blockchain. Sugeruje to, że osiągnięcie tego celu na własną rękę jest mało prawdopodobne. Co więcej, solidne łańcuchy hakerskie, takie jak te używane przez Bitcoin, są niezwykle skomplikowane. Wymaga również użycia wielu potężnych komputerów górniczych. Dlatego w ostatnich latach nie było takich zdarzeń związanych z blockchainem Bitcoina.