Атака 51%: как она устроена и чем опасна
4 августа сеть Bitcoin SV подверглась атаке 51%. Хакеры запустили три форка сети и скомпрометировали около 100 блоков и сотни тысяч транзакций. Это уже пятая атака на сеть Bitcoin SV за последние полтора месяца. Вообще, атака 51% — распространенный тип атаки на блокчейны криптовалют, особенно со слабым хешрейтом и небольшим количеством майнеров. На фоне этого мы решили разобраться в том, как злоумышленники атаковали Bitcoin SV, как вообще проходят атаки 51% и возможно ли таким образом взломать сеть Bitcoin.
Атаки 51% на Bitcoin SV
3 августа неизвестные хакеры атаковали блокчейн Bitcoin SV, создав три различные версии сети, блоки в которых добывались одновременно разными майнинговыми пулами. Атака продолжалась и на следующий день, в ходе нее реорганизации подверглось около 100 блоков. То есть злоумышленники фактически аннулировали транзакции в последних 100 блоках Bitcoin SV, а это сотни тысяч подтвержденных ранее операций.
Хакеры также много раз пытались провести атаку дойного расходования BSV, в ходе которой они старались потратить одни и те же монеты дважды. Но их действия были отклонены добросовестными майнерами. Сейчас атака прекратилась, но основные майнинговые пулы до сих пор не могут договориться о синхронизации версий блокчейна. Кто стоял за атакой и сколько ему удалось заработать — пока также неизвестно.
Это уже пятая атака на Bitcoin SV. Еще четыре были совершены 24 июня, а также 1-го, 6-го и 9 июля — их провел хакер (или группа хакеров) под псевдонимом ZuluPool. Позже злоумышленник пытался через биржу Bitmart депонировать «поддельные» BSV и обменять их на другие монеты. Таким образом хакеру удалось переместить некоторые из этих фейковых монет на восемь других бирж, включая Binance и Huobi.
Bitcoin SV — это форк Bitcoin Cash (форка сети Bitcoin), созданный в 2018 году. Его продвигают предприниматели Кэлвин Эйр и Крейг Райт, также известный как лже-Сатоши. У проекта подмоченная репутация: прежде всего из-за ассоциацией с Райтом. Ранее мы уже подробно рассказали о нем: предприниматель утверждает, что именно он является создателем биткоина Сатоши Накамото, но никак не может этого доказать.
Успешно проведенные атаки еще сильнее портят репутацию Bitcoin SV. Устойчивость блокчейна ко взломам — одно из условий доверия к проекту. Однако после недавних атак 51% несколько бирж приостановили вывод BSV, в том числе Bittrex, Gravity, Huobi и OKEx среди прочих. Атаки хакеров сказались и на курсе: 2 августа монета стоила $150, а 4 августа уже $135. Однако цена быстро восстановилась, и сейчас монета стоит около $158.7. Проект нельзя назвать неудачным с инвестиционной точки зрения: он медленно растет с 2019 года и в апреле обновил свой максимум, достигнув $441 за монету.
Что такое атака 51%
Атака 51% — это атака на сеть блокчейна, при которой злоумышленники получают контроль над 51 и более процентами хешрейта сети. Это дает возможность хакерам:
- прерывать добавление новых данных в блок, не давая другим майнерам генерировать блоки;
- забирать себе вознаграждение за добавление новых блоков, а также комиссии пользователей за транзакции;
- исключать или изменять порядок транзакций;
- предотвращать подтверждение некоторых (или всех) транзакций и блоков;
- отменять собственные транзакции, что позволяет несколько раз тратить одни и те же монеты (так называемое двойное расходование);
- блокировать работу других добросовестных майнеров и не позволять им добывать новые монеты;
- создавать свою собственную версию блокчейна (то есть проводить хардфорк оригинальной сети).
Если злоумышленники контролируют гораздо больше, чем 51% хешрейта сети, то они могут также манипулировать сложностью блокчейна, удалять историю транзакций, проводя откат прежних блоков и редактировать мемпул (список транзакций, ждущих включения в блок).
Экономический смысл атаки для хакеров — в двойном расходовании. Атака 51% позволяет создавать поддельные монеты — потратить одну и ту же монету несколько раз. В итоге злоумышленник может вывести или обменять коин на другую криптовалюту, а потом отменить транзакцию в сети и еще раз потратить эту же монету.
При проведении атаки 51% нельзя совершать сделки с чужими монетами, переводить их в стейкинг, а также менять количество монет и генерируемых блоков или же изменять информацию в старых блоках (переписать блокчейн). Также с помощью атаки 51% хакеры не могут узнать приватный ключ пользователя или подделать его подпись, так же как они не могут управлять решениями валидаторов при голосованиях.
Как осуществляется атака 51%
Ранее мы уже подробно рассмотрели, как устроен майнинг в сети Bitcoin — процесс генерации блоков и добычи новых монет.
Напомним, что в блокчейнах все транзакции с монетами за определенный период последовательно записываются в блоки, доступные для просмотра всем пользователям. Например, в Bitcoin новые блоки генерируются в среднем каждые 10 минут. Как только блок будет сгенерирован, информацию в нем нельзя изменить. В результате никто не может дважды потратить монету, транзакция с которой была добавлена в сгенерированный блок.
Майнеры — это ноды (узлы) блокчейн-сети. Они обрабатывают, верифицируют и добавляют транзакции в блоки. Еще они хранят мемпул биткоина — очередность транзакций, которые надо добавить в новый блок. За свою работу майнеры получают награду — новые монеты.
Чтобы сгенерировать блок, майнеры ищут решение специальных головоломок — криптографических хеш-функций. Напрямую решить их нельзя — надо перебирать возможные варианты до тех пор, пока не попадется нужное решение. Как только оно находится, блок добавляется в блокчейн и утверждается майнерами сети как верный. Чем мощнее оборудование майнера, тем быстрее перебираются решения и тем больше вероятность того, что именно он первым найдет правильное решение и получит за это награду.
Атака 51% возможна тогда, когда злоумышленники получают контроль над более чем половиной мощности сети. Тогда они находят решение для блока, но вместо того, чтобы транслировать его остальным майнерам, создают собственную цепочку блокчейна, которая существует параллельно с остальной сетью. В итоге получается две версии одной сети: «правильная», которую контролируют майнеры, и «неправильная» от злоумышленников, изолированная от основной. В «правильной» хакеры могут потратить свои монеты, например, перевести на другой кошелек или вывести, но в «неправильной» эти монеты останутся.
PoW-блокчейны управляются демократическим большинством. На практике это означает, что алгоритмы консенсуса блокчейна всегда выбирают самую тяжелую по объему (длинную) цепочку — по умолчанию она считается версией большинства, то есть верной. Так система определяет, какая версия сети является достоверной и правильной. Но контроль над более чем половиной вычислительной мощности сети позволяет злоумышленникам добавлять блоки в свою «неправильную» закрытую цепочку быстрее добросовестных майнеров.
Когда «неправильная» версия блокчейна станет длиннее истинной, злоумышленник транслирует ее остальным участникам сети. Система увидит, что именно эта сеть является более длинной и переключится на нее — она станет считаться истинной. Все транзакции, которых нет в этой цепочке, будут отменены. То есть у хакера снова появятся монеты, которые он только что потратил. Это и называется двойным расходованием. Имея внушительные вычислительные мощности, такой трюк можно проделывать несколько раз и создавать несколько разных версий блокчейна.
Атаке 51% подвержены как PoW-, так и PoS-алгоритмы. Ранее мы уже подробно рассказали о том, чем отличаются алгоритмы консенсуса.
PoW-проекты предрасположены к атаке 51% гораздо сильнее, ведь в них доход майнеров зависит от мощности оборудования.
А вот в PoS-алгоритмах все немного иначе. В них нет майнинга и не важна мощность оборудования. Новые монеты появляются благодаря стейкингу — чем больше у валидатора монет, тем больше шансов, что именно он подтвердит блок и получит вознаграждение. Поэтому захватить хешрейт сети здесь не получится.
Зато теоретически можно получить контроль над более чем 51% всех монет. Но на практике это очень сложно, а для крупных проектов еще и очень дорого и вообще лишено экономической целесообразности: ведь в случае успеха монета может упасть в цене сильнее, чем получится заработать на атаке. Кроме того, в модифицированных версиях PoS, например, DPoS в любой момент можно отозвать право верифицировать блоки, а стать валидатором может любой пользователь, владеющим минимальным уровнем стейка.
Возможна ли атака 51% на сеть Bitcoin
Да, теоретически злоумышленники могут провести атаку 51% в отношении блокчейна Bitcoin. Но на практике это очень маловероятный сценарий.
Биткоин — слишком крупный проект. За последний год его хешрейт (мощность сети) колебался от 84 EH/s до 180 EH/s. 1 EH/s означает, что в сети ежесекундно подбирается 1 квинтиллион (18 нулей) хэш-функций. Чтобы провести атаку 51%, злоумышленникам потребуется вычислительная мощность, превосходящая мощность миллионов майнеров по всему миру, а расходы на ее проведение составят около $1.7 млн в час. Для хакеров это невыполнимо и невыгодно.
Теоретически провести такую атаку могли бы власти какой-нибудь страны, которая поставила себе цель дискредитировать биткоин. Но мы уже писали ранее, почему это не уничтожит биткоин. Для властей гораздо проще и эффективнее запрещать биткоин законодательно или создавать ему альтернативу в виде цифровых валют центробанков — CBDC. Провести атаку 51% властям не помогут даже самые мощные компьютеры, в том числе квантовые. Ранее мы подробно рассказали, почему такие устройства смогут взломать некоторые приватные ключи, но не угрожают майнингу в PoW-блокчейнах.
Вероятность сговора ведущих майнеров ради подобной атаки тоже минимальна — зачем им это? Успешная атака была бы равносильна выстрелу себе в ногу: она обвалила бы курс, но не принесла бы прибыли.
Шансы на успешное проведение атаки 51% были только на ранних этапах развития биткоина, когда его сеть не была достаточно мощной, а монеты — такими дорогими. В июне 2014 года майнинг-пул GHash контролировал около 55% хешрейта биткоина в течение суток. Это открывало возможность для проведения атаки, но пул, естественно, не провел ее.
Самые крупные атаки 51%
Если у биткоина слишком крупная сеть для атаки 51%, то монеты с меньшим хешрейтом уязвимы перед ней. Разберем несколько подобных атак.
Первые атаки произошли в 2016 году: жертвами стали два небольших Ethereum-клона Shift и Krypton.
В мае 2018 года хакеры в течение трех дней осуществляли атаку 51% блокчейна Bitcoin Gold, хардфорка Bitcoin, проведя двойное расходование монет сети на сумму в более $18 млн через биржи Bittrex, Binance, Bithumb, Bitinka и Bitfinex. В итоге Bittrex провела делистинг монеты. В течение 6 часов с 23 по 24 января этого года сеть Bitcoin Gold снова подверглась атаке 51%, но на этот раз хакер смог заработать лишь $70 000. Предполагаемая стоимость атаки составила $10 200 за шесть часов.
В апреле и мае 2018 года злоумышленники атаковали блокчейн Verge и смогли заработать на этом $1 млн и $1.75 млн. В феврале этого года Verge снова подверглась атаке: примерно 200 дней транзакционной истории были уничтожены, а 560 000 блоков реорганизованы. Но благодаря своевременной реакции майнеров и сообщества хакеры не смогли ничего заработать.
С октября по декабрь 2018 года атакам 51% подвергалась монета Vertcoin (VTC). Злоумышленники дважды потратили около $100 000 в VTC, что стало результатом реорганизации более 300 блоков в сети. В декабре 2019-го сеть снова атаковали, реорганизовав более 600 блоков. Злоумышленник потратил примерно 1 BTC, чтобы получить хэшрейт, необходимый для совершения атаки, но не смог провести двойное расходование, несмотря на реорганизацию блоков. У него ничего не вышло, поскольку криптобиржа Bittrex (первоначальная цель атаки) отключила свой кошелек до того, как были опубликованы реорганизованные блоки.
В начале 2019 года атаке 51% подверглась сеть Ethereum Classic, форка Ethereum — хакеры заработали около $200 000 в ETC. Криптобиржа Coinbase была вынуждена прекратить на время все транзакции с ETC, снятие и ввод средств в монете.
Летом 2020 года Ethereum Classic подвергся уже трем атакам 51%: 1-го, 6-го и 29 августа. Хакеры потратили около $192 000, но смогли заработать $5.6 млн, реорганизововав около 14 700 блоков. Несмотря на это цена Ethereum Classic продемонстрировала устойчивость. Уже в октябре разработчики внедрили систему для защиты от атак 51% — протокол MESS, который сделал проведение атаки примерно в 31 раз дороже.
В заключение
Биткоин — крупнейший блокчейн, для которого атака 51% наименее вероятна. Сети с небольшим хешрейтом, в сотни и тысячи раз меньше, чем у ВТС, подвержены атаке и периодически становятся ее жертвами. Но даже в случае успеха злоумышленники не наносят проектам непоправимого вреда: часто они даже не получают прибыли.
Если вы инвестируете в крупные проекты или в те, что не работают на PoW, то сильно за волноваться из-за возможности атаки 51% не стоит. Новые проекты, даже совсем небольшие, как правило, работают на других алгоритмах консенсуса — атака 51% им не страшна.