Blockchain: как работи атака от 51% (атака с двойно харчене)

51% атака или атака с двойно изразходване е миньор или група миньори на блокчейн, които се опитват да изразходват криптовалутите си на този блокчейн два пъти. Те се опитват да ги „удвоят харченето“, откъдето идва и името. Целта на това не е винаги да се удвои харченето на криптовалути, а по-често да се хвърли дискредитиране върху определена криптовалута или блокчейн, като се повлияе на нейната цялост.

Ето кратък пример: нека да кажем, че изразходвам 10 биткойна за луксозна кола. Колата се доставя няколко дни по-късно и биткойнът ми се прехвърля от мен на автомобилната компания. Извършвайки 51% атака на блокчейн Bitcoin, сега мога да се опитам да обърна този трансфер на Bitcoin. Ако успея, ще притежавам както луксозната кола, така и моите биткойни, което ми позволява да изразходвам тези биткойни отново. Концепцията за 51% атака може да изглежда очевидна от гледна точка на демократичния блокчейн, но има често срещано погрешно схващане за това как работи. Тази кратка статия ще се опита да даде ясно обяснение как 51% атака работи по-подробно. Ако все още не знаете как миньорите добавят транзакции към blockchain, предлагам ви да прочетете как миньорите добавят транзакции в blockchain първо в седем стъпки, тъй като това е само пет минути четене. Ако не знаете как работи блокчейн, предлагам ви да започнете тук.

Blockchain = управление

Преди да разгледаме подробно около 51% атака, важно е да разберем, че протоколите на blockchain са в основата на форма на управление. Блокчейн управлява главна книга от данни, например данни за транзакции. Тъй като блокчейн протоколът може да управлява това за нас, ние вече не се нуждаем от трета страна, която да прави това, като правителство или банка. Това прави (повечето) блокчейн децентрализиран. Протоколът на биткойн блокчейна се основава на демокрацията, което означава, че мнозинството от участниците (миньорите) в мрежата ще получат решение за това коя версия на blockchain представлява истината.

Как работи атака от 51%

Когато собственик на биткойн се откаже от транзакция, той се поставя в локален пул от непотвърдени транзакции. Миньорите избират транзакции от тези пулове, за да образуват блок от транзакции. За да добавят този блок от транзакции към blockchain, те трябва да намерят решение на много труден математически проблем. Те се опитват да намерят това решение с помощта на изчислителна мощност. Това се нарича хеширане (прочетете повече за алгоритъма на хеширане тук). Колкото повече изчислителна сила има един миньор, толкова по-големи са шансовете им да намерят решение, преди другите миньори да намерят своите. Когато миньор намери решение, той ще бъде излъчен (заедно с техния блок) на останалите миньори и те ще го проверят само ако всички транзакции вътре в блока са валидни според съществуващия запис на транзакциите в blockchain. Обърнете внимание, че дори корумпиран миньор никога не може да създаде транзакция за някой друг, тъй като той ще се нуждае от цифровия подпис на това лице, за да направи това (техния личен ключ). Следователно изпращането на биткойни от чужд акаунт е просто невъзможно без достъп до съответния частен ключ.

Стелтен майнинг - създаване на потомство на блокчейна

Сега обърнете внимание. Злобен миньор обаче може да се опита да обърне съществуващите транзакции. Когато миньор намери решение, той трябва да бъде излъчен към всички останали миньори, така че те да могат да го проверят, след като блокът се добави към блокчейн (миньорите постигнат консенсус). Корумпираният миньор обаче може да създаде потомство на блокчейна, като не излъчва решенията на своите блокове към останалата част от мрежата. Вече има две версии на blockchain.

Вече има две версии на blockchain. Червената блокчейна може да се разглежда в режим „стелт“.

Една версия, която се следва от некорумпираните миньори, и една, която се следва от корумпирания миньор. Повреденият миньор вече работи върху собствената си версия на този блокчейн и не го излъчва към останалата част от мрежата. Останалата част от мрежата не приема тази верига, защото в края на краищата не е излъчена. Той е изолиран към останалата част от мрежата. Корумпираният миньор вече може да похарчи всичките си биткойни за истинската версия на blockchain, тази, над която работят всички останали миньори. Да речем, че го харчи например на Lamborghini. В истинския блокчейн сега се харчат неговите биткойни. Междувременно той не включва тези транзакции в своята изолирана версия на blockchain. В изолираната си версия на blockchain той все още има тези биткойни.

Корумпираният миньор изключва собствената си транзакция в частния си блокчейн.

Междувременно той все още вдига блокове и сам ги проверява на изолирана версия на blockchain. Оттук започват всички проблеми ... Блокчейнът е програмиран да следва модел на демократично управление, известен още като мнозинството. Блокчейнът прави това, като винаги следва най-дългата (всъщност най-тежката, но не позволява да усложнява прекалено много) веригата, в края на краищата, по-голямата част от миньорите добавят блокове към своята версия на blockchain по-бързо от останалата част от мрежата (така; най-дълга верига = мнозинство). Ето как блокчейнът определя коя версия на веригата му е истината, а на свой ред се основават всички баланси на портфейлите. Вече започна състезание. Който има най-много хеширане, ще добави блокове към своята версия на веригата по-бързо.

Корумпираният миньор вече добавя блокове към частната си верига по-бързо, защото има повече хешираща сила.

Състезание - обръщане на съществуващите транзакции чрез излъчване на нова верига

Повреденият миньор вече ще се опита да добави блокове към изолираната си блокчейн по-бързо, отколкото другите миньори добавят блокове към своята блокчейн (истинната). Веднага щом корумпираният миньор създава по-дълъг блокчейн, той изведнъж излъчва тази версия на blockchain на останалата част от мрежата. Останалата част от мрежата вече ще открие, че тази (корумпирана) версия на blockchain всъщност е по-дълга от тази, върху която са работили, и протоколът ги принуждава да преминат към тази верига.

Корумпираният миньор излъчва веригата си към останалата част от мрежата, след като е по-дълга (по-тежка) от оригиналната верига.

Повредената blockchain сега се счита за истинската blockchain и всички транзакции, които не са включени в тази верига, ще бъдат незабавно възстановени. Нападателят е похарчил биткойните си на Lamborghini преди, но тази транзакция не е била включена в неговия стелт-верига, веригата, която сега се контролира и затова сега отново контролира тези биткойни. Той е в състояние да ги похарчи отново.

Всички останали миньори трябва да реорганизират своята верижна история според корумпираната верига, защото тя е по-тежка. Тази история не включва разходите за 100 BTC.

Това е атака с двойни разходи. Обикновено се нарича атака с 51%, защото злонамереният миньор ще изисква повече хешираща мощност, отколкото останалата част от мрежата комбинирана (по този начин 51% от хеширащата мощност), за да добави по-бързо блокове към неговата версия на blockchain, в крайна сметка позволява той да изгради по-дълга верига.

И така, как биткойн е обезпечен срещу това?

В действителност тези атаки са изключително трудни за изпълнение. Както споменахме по-рано, един миньор ще се нуждае от повече хешираща мощност от останалата част от мрежата, комбинирани, за да постигне това. Като се има предвид фактът, че на блокчейн Bitcoin има може би дори стотици хиляди миньори, злонамерен миньор ще трябва да харчи огромни средства за минния хардуер, за да се конкурира с останалата част от мрежата. Дори и най-силните компютри на земята не са пряко конкурентни с общата изчислителна мощност в тази мрежа. И има безброй други аргументи срещу извършването на 51% атака. Например рискът да ви хванат и преследват, но също така и разходите за електроенергия, отдаване под наем на място и съхранение на целия хардуерен хардуер, покриване на вашите следи и изпиране на парите. Операция като тази е просто поставена твърде много усилия за това, което ще даде нападателя в замяна, поне в случай на биткойн блокчейн.

Случайно сенчест човек с някакъв хардуер за минно дело.

Уязвими ли са други блокчейн?

Друга интересна история обаче е, че независимо от това колко е трудно да се извърши такава атака, в миналото действително са се случвали многобройни 51% атаки. Всъщност нападение бе извършено съвсем наскоро (април 2018 г.) на блокчейн Verge (XVG). В този конкретен случай, нападателят намери грешка в кода на протокола на verge blockchain, който му позволи да произвежда нови блокове с изключително бързи темпове, което му позволява да създаде по-дълга версия на блокчейн Verge за кратък период от време. Този пример илюстрира събитие, което може да улесни 51% атака, макар и доста рядко и често благодарение на грешка в протоколния код. Вероятният екип от разработчици на blockchain вероятно ще забележи подобна грешка и ще предотврати злоупотребата с нея.

Когато разглеждаме този алгоритъм „Proof of Work“ (алгоритъмът за добив), той ни казва, че по-активното хеширане / изчислителна мощност води до повече сигурност срещу 51% атака. По-малките блокчейн, които работят по този алгоритъм, въпреки че, като малък алткойн, могат да бъдат значително по-уязвими от подобни атаки, като се има предвид, че няма толкова голяма изчислителна сила, с която нападателят да се конкурира. Ето защо 51% атаки обикновено се появяват на малки блокчейн (Bitcoin Gold например), ако въобще се появят. Блокчейнът за биткойн никога досега не е станал жертва на 51% атака.

ASIC добив - подобрен минни хардуер

Това ни отвежда и до една от най-новите горещи теми в blockchain наскоро; ASIC добив. Добивът на ASIC е технология за добив, разработена от различни компании за добив на биткойн, за да подобри минния хардуер, което го прави много по-мощен. Много хора в бранша в момента дебатират дали миньорите на ASIC правят определени минни индивиди или групи твърде мощни. Наскоро блокчейнът Monero (XMR) внедри актуализация на протокола, която блокира извличането на ASIC от мината в неговата блокчейн. В резултат на това общата мощност на хеширане в мрежата спадна с изумителните 80% (вижте по-долу)!

Изчислителната мощност в мрежата XMR спадна с 80% след блокирането на ASIC!

Това показва колко мощност на мрежата Monero е била в ръцете на миньорите на ASIC. Ако всички участници в мрежата използват ASIC хардуер за добив, това не би трябвало да е проблем. Проблемът е, обаче, че големи минни компании като Bitmain се подозират, че контролират голямо количество операции за добив на ASIC. Въпреки че тези организации разпространяват тази технология и на отделни лица, те вероятно се правят само след като са я използвали дълго време. Някои хора в blockchain разискват дали това ги прави твърде мощни или не. В идеалния случай блокчейн трябва да се управлява от колкото се може повече отделни миньори. Това в крайна сметка го прави по-децентрализиран.

Поглед в едно от минните съоръжения на Bitmain във вътрешна Монголия, КитайДруго огромно руднично съоръжение.

Искате да тествате знанията си в blockchain? Вземете теста за 20 въпроса тук и вижте дали сте на ниво начинаещи, напреднали или експертни.

Тази статия беше полезна? Помогнете на другите да го намерят, като ръкопляскате или споделяте. За по-ясни и лесни за разбиране обяснения на blockchain посетете r / BlockchainSchool subreddit или прочетете някое от другите ми кратки обяснения на blockchain на:

Допълнителна история: Ликвидирането на биткойн в размер на 416 000 000 долара на борсата на OKEx през юли 2018 г.

Блокчейн терминология: Основна терминология, за да започнете

Начинаещ 1: Как работи blockchain в 7 стъпки

Начинаещ 2: Как работи минното дело и как се обработват транзакциите

Начинаещ 3: Как хакер извършва 51% атака

Начинаещ 4: Възли и мастерноди

Начинаещ 5: Трудност с минно дело и блокиране на времето

Можете да ме последвате на средно ниво, ако искате да се следите за по-образователни статии за блокчейн. Благодаря ви за четенето!