Криптовалютные блокчейны уязвимы к атаке 51%. Если в руках злоумышленников оказывается «контрольный пакет» (более половины) генерирующих криптовалюту мощностей или криптовалютной массы, то они могут добавлять в цепочку даже поддельные блоки и получать максимальную выгоду. Cryptonomist разобрался, как происходит атака 51% и насколько она опасна.
Суть атаки 51%
Майнеры подтверждают транзакции в сети и собирают их в блоки, которые добавляются в конец цепочки. За эту работу они получают вознаграждение в криптовалюте.
Если в блокчейне используется алгоритм консенсуса PoW (Proof-of-Work), как, например, в сети биткоина, то для вычисления хеша каждого нового блока нужно проводить сложные ресурсозатратные вычисления — перебирать все возможные ключи, пока не будет получен нужный. Награда достаётся тому, кто первый найдёт подходящий ключ. Чем больше у майнера хешрейта (генерирующих мощностей), тем выше шанс получить награду.
Атака 51% предполагает, что 51% от общего объёма хэшрейта сети находится под контролем одного или нескольких майнеров, принимающих согласованные решения.
Майнеры получают контроль над генерацией блоков и могут добавлять записи в блокчейн по своему усмотрению. Они могут не подтверждать новые транзакции, манипулировать операции, создавать любое количество блоков и добавлять их в блокчейн. Кроме того, хакеры способны повторно тратить монеты, отзывая совершенные с ними транзакции. Они не могут разве что менять информацию в блоках, которые были сгенерированы ранее.
Опасна ли атака 51% для PoS-блокчейнов
Блокчейны, которые используют алгоритм консенсуса PoS (Proof-of-Stake), также подвержены атаке 51%, но в меньшей степени. Дело в том, что в таких сетях работоспособность системы поддерживают валидаторы. Их вклад в общее дело и доход определяется тем, каким количеством криптовалюты валидаторы располагают.
Соответственно, чтобы реализовать атаку 51% в PoS-блокчейне, необходимо захватить 51% криптовалюты.
Этот вариант может пройти для новых криптовалют, которые не слишком популярны и обладают небольшой капитализацией.
Примеры атаки 51%
Сеть анонимной и довольно популярной криптовалюты Verge 4 апреля подверглась атаке 51%. За три часа хакеры получили полный контроль над блокчейном и завладели 250 тыс. токенов XVG (по официальной версии) или 3.9 млн токенов (по оценкам криптосообщества).
Эксперты установили, что атака стала возможной не из-за захвата вычислительных мощностей. Реальная причина — баг в коде, который позволил добавлять новые блоки в блокчейн быстрее, чем предполагает протокол: каждую секунду, или в 30 раз чаще нормы.
Разработчики пояснили, что блокчейн Verge поддерживает сразу несколько алгоритмов. С каждым новым блоком они меняются. Хакерам удалось отправлять блоки алгоритма Scrypt с ложной временной меткой. Блокчейн принимал блок, полагая, что его предшественник (блок, созданный по алгоритму Scrypt) был добавлен час назад.
В результате 99% подлинных блоков, которые формировали другие майнеры, блокчейн отвергал. А хакеры приумножали свою добычу.
Атака 51% на Verge стала одним из крупнейших вмешательств этого типа.
Если хакеры действительно завладели 3,9 млн монет (413 тыс. долларов по курсу), разработчикам придётся провести хардфорк, чтобы заморозить украденные токены.
Впрочем, курс криптовалюты вырос более чем вдвое. На момент атаки он составлял 0.045 доллара за монету. Актуальное значение:
В июле 2014 года майнинговому пулу Ghash. io удалось захватить 55% мощности сети Bitcoin. Но вскоре пул добровольно (по крайней мере, по официальной версии) согласился снизить собственные мощности, чтобы располагать не более 40% хешрейта. Но инцидент всё же привёл к падению курса биткоина на 20% - с 700 до 558 долларов.
Блокчейны Krypton и Shift, работающие на базе Ethereum, подверглись атаке 51% в августе 2016 года. Атаку провела хакерская группировка 51 Crew. Злоумышленники смогли совершить двойную трату монет Krypton на бирже Bittrex и украсть 22 тыс. монет из обеих сетей.
Что в итоге
Чтобы реализовать атаку 51%, нужно располагать 51% хешрейта в PoW-блокчейна и 51% всей массы криптовалюты — в PoS-блокчейнах. Оба варианта невыгодны для атакующего: придётся вложить слишком много, чтобы завладеть небольшим объёмом криптовалюты, курс которой моментально обвалится.
Варианты атаки 51% можно реализовать из-за обнаруженных багов в коде. Но биткоину, Ethereum и другим крупным и популярным криптовалютам такая атака вряд ли грозит.