Глоссарий / Приватность и безопасность
Атака 51 %
Другие названия: Атака 51 %, Атака большинства, Majority attack.
- Что такое атака 51 %?
- Атака 51 % представляет собой попытку переписать недавнюю историю биткоина, управляя большей частью майнинговых мощностей сети, что позволяет атакующему отменить собственные недавние платежи.
Майнинг является гонкой, и тот, у кого больше всего оборудования, побеждает в большинстве гонок. Группа, контролирующая более половины хешрейта, может построить более длинную приватную цепочку и опубликовать ее, стерев блоки, которые другие люди уже считали окончательными. Она не может подделать вашу подпись, поэтому биткоины, которые уже лежат в кошельке под вашим контролем, не то, что забирает такая атака.
Как это работает
Узлы биткоина следуют за цепочкой с наибольшим накопленным доказательством работы, а не за той, которую они случайно увидели первой. Атакующий использует это правило, майня втайне. Начиная с некоторого недавнего блока, он строит собственную ветвь, не публикуя ее, пока остальная сеть продлевает публичную ветвь. Если секретная ветвь когда-либо станет длиннее, после ее публикации все узлы переключатся, а блоки, проигравшие гонку, отбрасываются вместе с платежами, которые существовали только внутри них.
В whitepaper точно измерено, насколько это трудно. Раздел 11 рассчитывает число подтверждений, необходимых, чтобы вероятность успешного догона опустилась ниже 0,1 процента: 5 блоков против атакующего с 10 процентами хешрейта, 15 блоков при 25 процентах, 24 блока при 30 процентах и 340 блоков при 45 процентах. Кривая крутая, а затем ломается. Выше 50 процентов вероятность со временем догнать равна 1, и никакое число подтверждений это не исправит. Именно этот разрыв на половине хешрейта и дал название.
Контроль над большей частью хешрейта не является root-доступом. Майнер, который намайнил недействительный блок, например такой, который платит себе 10 биткоинов при субсидии 3,125 или тратит выход, ключа от которого у него нет, получает отказ от каждого полного узла, включая дешевый, работающий на ноутбуке. Возможности атакующего узки и конкретны: исключать транзакции из блоков, делать осиротевшими блоки, найденные честными майнерами, и отменять платежи, которые он сам совершил в пределах последних нескольких блоков. Он не может выпускать биткоины вне графика, поднять лимит в 21 миллион или перемещать средства с адреса, транзакцию с которого он не может подписать.
Атаку еще и арендуют, а не строят. Сложность пересчитывается только каждые 2016 блоков, поэтому атакующему не нужно поддерживать что-либо две недели. На цепочке, алгоритм которой имеет свободные мощности на рынке майнинга, достаточно нескольких часов арендованной мощности, и поэтому жертвами всегда были небольшие цепочки, а не биткоин.
Почему это важно при покупке биткоина
Успешной атаки большинства на основную цепочку биткоина еще ни разу не было. Ближе всего к этому было в июле 2014 года, когда пул GHash.io перевалил за половину хешрейта сети и под общественным давлением опубликовал обязательство не превышать 39,99 процента; пул закрылся в октябре 2016 года. Концентрация по-прежнему остается реальной проблемой. Два пула, Foundry USA и AntPool, вместе строят примерно половину всех блоков, хотя хешрейтом, который они направляют, владеют тысячи отдельных майнеров, способных перенаправить свои машины в другой пул за минуты.
Для покупателя практический риск узок. Биткоины, которые лежат в вашем собственном кошельке, нельзя убрать реорганизацией, потому что реорганизация не может изменить того, кто владеет ключами. В зоне поражения находятся средства в движении: пополнение, которое биржа уже зачислила, но еще подтверждает, и любой небольшой альткоин на доказательстве работы, торгуемый рядом с биткоином на той же платформе. Из 24 бирж, обзор которых есть на этом сайте, те, что потеряли деньги клиентов, потеряли их из-за сбоя кастодиального хранения и мошенничества, а не из-за реорганизаций цепочки. Это соотношение сохранялось всю историю актива.
Ожидание подтверждений является видимой ценой такой защиты. Когда биржа заставляет вас ждать несколько блоков, прежде чем пополнение станет доступно для торговли, она покупает себе тот запас безопасности, который описывает whitepaper. Если вы перемещаете биткоины между платформами, учитывайте эту задержку в планах, а не считайте ее ошибкой.
Bitcoin Gold, атакованный дважды
Bitcoin Gold представляет собой самый наглядный разобранный пример, потому что это форк кода биткоина от 2017 года, который унаследовал все, кроме хешрейта. В мае 2018 года атакующий внес BTG на биржи, обменял их на другие активы, вывел средства, а затем реорганизовал цепочку так, чтобы пополнения никогда не произошли. По сообщениям, двойные расходы составили примерно 18 млн долларов. Bittrex, одна из бирж, оставшихся в убытке, исключила BTG из листинга в сентябре 2018 года после того, как проект отказался покрыть убыток.
Это повторилось 23 января 2020 года: две глубокие реорганизации отменили около 1900 и 5267 BTG, проведенные с использованием вычислительной мощности, арендованной на открытом рынке. Вывод обобщается: стоимость атаки на цепочку определяется ее хешрейтом, а не рыночной капитализацией или брендом. Криптовалюта может стоить сотни миллионов долларов и все равно быть реорганизована за стоимость нескольких часов аренды оборудования.
Атака 51 % vs двойной расход
Атака 51 % является методом; двойной расход обычно является ее результатом. Почти каждая реальная попытка двойного расхода в истории биткоина не включала майнинга вовсе, только замену неподтвержденной транзакции в мемпуле, что обходится атакующему лишь более высокой комиссией. Контроль над большей частью хешрейта нужен, чтобы отменить платеж, уже погребенный в блоках, а это совершенно другой бюджет.
Атака 51 % vs эгоистичный майнинг
Эгоистичный майнинг является стратегией получения прибыли, а не переписыванием истории. Eyal и Sirer показали в 2013 году, что майнер, который придерживает найденные блоки и выпускает их стратегически, может зарабатывать больше своей справедливой доли вознаграждений, имея заметно меньше половины хешрейта, а в некоторых условиях сети начиная примерно с трети. Эгоистичный майнер по-прежнему соблюдает правила консенсуса и никогда не отменяет подтвержденный платеж; он крадет выручку у других майнеров, а не биткоины у пользователей.