Централизация майнинга — возможен ли «захват власти» в блокчейне
Централизация майнинга и атака 51%. Эти страшилки существуют с того времени, как майнинг вышел за пределы персональной техники и приобрел всеохватывающие масштабы. Какие возможны сценарии централизации майнинга и контроля более половины вычислительных мощностей узким кругом?
Пути централизации майнинга
Централизация майнинга и концентрация мощностей в одних руках может пойти двумя путями:
- Вендор монополизирует процесс производства оборудования для добычи определенной криптовалюты.
- Пул, ассоциация или объединение сконцентрируют в своих руках более половины вычислительных мощностей, необходимых для работы сети.
Наибольшую угрозу централизация майнинга представляет для новых, едва появившихся блокчейнов. Их можно быстро «оккупировать», генерируя прибыль за счет доминирующего положения. Впрочем, начнем с самого жуткого и неправдоподобного варианта развития событий.
Вариант первый: производитель перехватывает контроль над устройствами
Допустим, один из производителей займет на рынке доминирующее положение. Он может внедрить бэкдор на программном или аппаратном уровне и реализовать один из следующих сценариев:
- автоматически подключать майнер к пулу разработчика без возможности выбора монеты;
- препятствовать доказательству выполнения работы, если майнер не ссылается на пул разработчика;
- произвольно отключать майнер.
Однако последствия подобных действий мгновенно уничтожат репутацию любой более-менее крупной компании. Коллективная жалоба и долгое судебное разбирательство в этом случае станет лишь началом процесса развала производителя.
В любом случае, даже неопытные пользователи могут заметить нестабильную работу и странное поведение устройств. Поэтому хотя любой производитель имеет физическую возможность интегрировать подобные бэкдоры, это не целесообразно. Производителю выгоднее продавать надежные и качественные «лопаты» для добычи, чем подвергать себя риску обнаружения и получать низкое вознаграждение.
Вариант второй: производитель повышает цену на оборудование
Это еще один сценарий, при котором централизация произойдет «сверху», хотя и с малой долей вероятности. Вендор-монополист способен поднять цену на оборудование, увеличив тем самым сроки окупаемости, требовать оплаты определенным способом (например, исключительно в криптовалюте), а также искусственно растягивать сроки поставки.
Однако в условиях конкуренции такой ход практически невозможен. Новые производители регулярно выходят на рынок и они скорее снижают цены, демпингуя друг друга и сражаясь за клиентов.
Таким образом, производители не заинтересованы в концентрации мощности своими силами. Им напротив выгодно продать как можно больше устройств-«лопат». Основная опасность исходит от пользователей.
Вариант третий: захват вычислительных мощностей
Объединение может реализовать два варианта централизации майнинга. При первом в руках компании сконцентрируется более половины пулов. Во втором случае можно объединить более половины вычислительной мощности и вплотную подойти к осуществлению «атаки 51%».
Когда майнеры стали объединяться в пулы, впервые заговорили об опасности централизации. До этого в блокчейне не предполагалось наличие единого центра, способного влиять на транзакции. Долгое время пулы не контролировали даже 20% сети, не говоря уже о 45-50%. Но по мере роста популярности майнинга, пользователи стали активнее входить именно в пулы.
Главная «фишка» пула — гарантированное вознаграждение для участников. Представим, что блокчейн-сеть состоит из 10 участников. Каждый из них имеет ферму одинаковой мощности с другими участниками. Соответственно, вероятность получить 10 биткоинов за 100 дней майнинга составляет для каждого из них примерно 1/10. Однако доподлинно неизвестно, кто будет срывать куш, а кто оставаться ни с чем. Если они объединятся в пул, то гарантированно заберут вознаграждение и поделят между собой. Каждый точно получит заветную часть биткоина.
В процессе развития пулы стали брать комиссию за гарантированное вознаграждение. Постепенно майнеры все чаще и чаще стали подключаться именно к пулам, девальвируя возможность отдельного участника на получение вознаграждения. Сложность сети выросла и некоторые пулы в той же сети биткоин отыграли солидные доли у других участников.
Например, пул GHASH.io на пике контролировал 40-45% вычислительных мощностей сети биткоин, а его конкурент BTC Guild располагал 25% мощностей. Если бы вдруг два этих пула объединились, они располагали бы 70% мощностей. В децентрализованной сети подобная концентрация позволила бы отклонять транзакции между кошельками. Пользователи даже делились наблюдениями о том, что некоторые пулы создавали несколько блоков подряд, словно проверяя возможность сети. Выдвигались также догадки о том, что GHASH продает мощности пула по фиксированной ставке через подставные каналы, расширяя и без того колоссальное влияние.
В начале августа 2018 года СМИ сообщили о снижении долей крупнейших пулов BTC.com и Antpool. Это подконтрольные Bitmain пулы, которые сократили присутствие до 30%. Доля мелких майнеров при этом вновь увеличилась. Также у пользователей появилась возможность использовать протоколы с собственными шаблонами блоков. Разработчики проиллюстрировали это решение восклицанием: «Майнеры вновь стали майнерами!».
Получается, что теоретическая вероятность атаки 51% сохраняется именно за счет концентрации вычислительных мощностей. Но централизация ведет к уязвимостям и повышению риска сетевых взломов. Поэтому концентрация мощностей не всегда в интересах «штаба».
Как реализовали сценарии захватов и почему их могут повторить
Атака 51% - это ахиллесова пята алгоритма Proof-of-Work. Поскольку вычисления происходят круглосуточно, майнеры постоянно предлагают верные хеши. В блокчейне происходит разветвление. Тогда участники признают верной ту ветвь, в которой сгенерировано больше блоков и включают ее в сеть.
Если у них оказывается более половины хешрейта, они могут добавлять свои ветки вычислений, блокируя новые («честные») транзакции. К тому же майнеры могут отзывать совершенные транзакции, перебрасывая одну и ту же монету несколько раз подряд. Это называется двойной тратой и активно используется захватчиками.
Аналитики говорят, что взломать гораздо проще альткоины и молодые блокчейны. Чтобы атаковать биткоин, например, нужно вложить около 50-60 млрд долларов.
Самые яркие атаки последних месяцев:
- апрель 2018 г. - в течение нескольких часов майнеры-взломщики в сети Verge получили около 250 тыс. монет XVG на сумму 1,8 млн долларов. Причиной захвата стал баг в коде. В мае атаку повторили, добавляя блоки с произвольными временными метками. Правда, не все участники согласились с тем, что была совершена атака;
- 13-15 мая 2018 года — японская монета MonaCoin также подверглась атаке, основанной на уязвимости блокчейна. Поскольку сеть предполагает быстрое нахождение блоков, злоумышленнику удалось найти сразу два блока, удовлетворяющих решению. Однако он сохранил их в секрете и за короткое время создал альтернативную цепочку, достигшую достаточной длины для того, чтобы ее признали верной. Это принесло хакеру около 90 тыс. долларов;
- 16-18 мая 2018 — директор по коммуникациям Bitcoin Gold сообщил о кратковременно контроле над транзакциями у неустановленного лица. Мошенник проводил двойные траты, размещая монета на разных биржах и отменяя транзакции с переводом на свой кошелек. С 16 по 18 мая ему удалось накопить 388 тыс. BTG на общую сумму 18 млн долларов;
- 4 июня 2018 — хакеры в течение четырех часов атаковали ZenCash, проведя двойное расходование 13 и 6,6 тыс. ZEN. Стало известно, что они выкупили мощности сервиса облачного майнинга за 30 тыс. долларов, заработав в итоге 550 тыс.
Абсолютной панацеи от атаки 51% или централизации нет. Теоретически, она возможна даже на алгоритме Proof-of-Stake. Недавно вариант решения предложил основатель сети Ethereum Виталик Бутерин. Он считает, что в сеть нужно добавить узлы-наблюдатели для слежения за консенсусом. Узлы будут не только автоматически выгружать результаты, что повысит отказоустойчивость системы до 99%. И тогда атаку 51% можно осуществить только в форме атаки 99%. Ложные транзакции всегда отличаются по времени и несогласованности можно будет блокировать в реальном времени.
Будем надеяться, что и остальные разработчики не сидят сложа руки и думают как сохранить децентрализацию в стремительно растущем блокчейне.