По заветам Сатоси Накамото, биткоин — полностью независимая валюта и платежная система. Но когда капитализация биткоина выросла до миллиардов долларов, вопрос контроля над блокчейном стал одним из самых острых. В еще большей степени это касается появившихся позже криптовалют, которые сразу создавались из расчета многократного роста стоимости в будущем.
Самый эффективный метод контроля — это скрытый контроль, о котором сам контролируемый объект даже не подозревает. Невозможно бороться с тем, чего не знаешь. Но даже частичный и косвенный контроль может принести огромную прибыль тому, кто сможет его установить.
Несмотря на открытый код большинства криптовалютных проектов и прозрачность транзакций в блокчейне, в большинстве из них возможен частичный или полный перехват управления. Разработчики, эксперты по безопасности и другие энтузиасты часто проводят исследования на тему централизации какой-либо из функций блокчейна, дающей возможность прямого или косвенного контроля над криптовалютами.
В этой статье мы обобщим уязвимые аспекты популярных блокчейнов: каким способом злоумышленник или организованная группа, от команды хакеров до правительства, может захватить блокчейн или нарушить его работу с целью обрушения. Успешная атака на основные архитектурные элементы блокчейна опасна не только прямыми техническими и финансовыми последствиями, но и неизбежным кризисом доверия к атакованному блокчейну и отрасли в целом.
Первая часть статьи посвящена угрозе централизации на базовом уровне блокчейна — уровне консенсуса, на котором происходит подтверждение транзакций и создание новых монет.
Централизация выпуска: уязвимости майнинга и стейкинга
В большинстве криптовалютных проектов выпуск новых монет напрямую связан с подтверждением транзакций. Создание новых блоков — это уровень консенсуса, теоретического и практического фундамента всех блокчейнов, на основе которого и создается «нерушимая цепочка».
Для блокчейнов на основе Proof-of-Work процесс создания блоков называется майнингом, для блокчейнов на Proof-of-Stake — стейкингом. Есть и другие, менее популярные методы консенсуса, а также блокчейны с комбинированным консенсусом.
Создание новых блоков — самая важная точка отказа как для базового блокчейна, так и всех его надстроек. Например, остановка создания блоков в базовой цепочке Эфириума парализует не только оборот ETH. Пострадают или полностью остановятся связанные сайдчейны и надстройки (Polygon, NEAR, Arbitrum и так далее). Кризис накроет всю экосистему децентрализованных приложений с капитализацией в сотни миллиардов долларов, где работают тысячи смарт-контрактов и миллионы пользователей.
Если пользователи не смогут отправлять и получать транзакции (платежные и не только), вся система станет бесполезной. Даже временная остановка работы блокчейна — это катастрофа для всех его пользователей. А создание перманентной угрозы остановки транзакций приведет к падению стоимости всех активов в экосистеме уязвимого блокчейна. Поэтому обеспечение безопасности «нулевого уровня» консенсуса — первостепенная задача разработчиков протокола.
Представьте, например, что вы положили деньги в банк, который хранит все свои активы в подземном бункере под высокой горой. Однажды эту гору взорвали, и вход в хранилище оказался замурован тысячами тонн камней. Все деньги клиентов стали деньгами Шредингера — они может быть есть, а может быть их уже нет. И банк не может проводить никаких операций, пока не получит доступ к хранилищу и не выяснит состояние активов. Остановленный блокчейн хранится на компьютерах всех пользователей с полной версией кошелька, но они не могут ничего сделать со своими монетами, пока не будет запущен майнинг или стейкинг.
Возможность перехвата контроля над созданием монет и блоков сильно отличается в зависимости от метода консенсуса. Рассмотрим два основных варианта.
Proof-of-Work
На консенсусе Proof-of-Work (доказательство работы) основан первый в мире блокчейн — Биткоин, и его форки, такие как Bitcoin Cash или Litecoin. Перехват контроля над майнингом возможен через централизацию мощностей оборудования и серверов пулов.
Первая угроза более серьезна, так как «правильные майнеры» не могут быстро увеличить мощности. Пока этого не произойдет, атакующий будет иметь неоспоримое преимущество. Сосредоточение мощностей на одном пуле без одновременного контроля над оборудованием менее существенно, так как независимые майнеры могут свободно мигрировать между пулами. Подобные случаи в истории Биткоина уже бывали: после поднятия тревоги в сообществе как минимум часть майнеров покидала доминирующий пул.
Обладатель превосходства в вычислительных мощностях майнинга (так называемая атака 51%) может:
-
Изменять правила консенсуса для подконтрольных ему узлов (через модификацию кода кошелька, непосредственно формирующего блоки).
-
Избирательно подтверждать только нужные транзакции или отказывать в подтверждении мешающих ему.
-
Полностью остановить подтверждение транзакций, формируя только пустые блоки.
-
Проводить двойные или даже многократные траты своих активов.
Он НЕ может:
-
Проводить транзакции с чужими монетами.
-
Захватить чужие мощности оборудования.
-
Менять правила консенсуса для неподконтрольных узлов.
-
Вносить изменения в блоки, созданные до перехвата контроля. Это ограничение имеет оговорки: заранее спланированная перезапись недавней истории возможна, глубина ее зависит от степени превосходства над другими майнерами.
Централизация майнинга через доминирование мощностей требует постоянных высоких расходов. В них входят эксплуатационные расходы (электроэнергия, инфраструктура и так далее) и дозакупка оборудования для стабилизации своего превосходства над всеми остальными майнерами. При наличии доминирования в мощности хэширования нет необходимости использовать публичный пул.
Использование доминирования одного пула для проведения атаки 51% с высокой вероятностью будет кратковременным и одноразовым. Обнаружение атаки уничтожит репутацию пула и приведет к уходу майнеров, то есть фактически разрушит бизнес оператора пула.
Стоимость централизации майнинга напрямую зависит от текущей мощности хэширования в блокчейне и применяемого оборудования. Например, захват контроля над блокчейном Биткоина потребует миллиардов долларов.
Цена атаки
Текущий хешрейт Биткоина — около 320 Эх/с. Для получения контроля над блокчейном необходимо, как минимум, контролировать оборудование с хешрейтом более 160 Эх/с. Один из топовых на сегодня ASIC-майнеров, Antminer S19j Pro+, имеет хешрейт 120 Тх/с, потребляет 3300 Вт и стоит $2 380 (согласно сайту производителя).
Для перехвата контроля в блокчейне Биткоина необходимо иметь более 1 333 334 таких асиков. Их покупка по розничной цене обойдется почти в $3.2 млрд. Для их работы необходима электрическая мощность 4.4 ГВт без учета охлаждения и прочих накладных расходов.
Таким образом, эффективная атака 51% на блокчейн Биткоина, по самым скромным подсчетам, обойдется в $4 млрд, причем атакующему придется выложить всю сумму и дождаться доставки и запуска всех этих устройств. Арендовать на открытом рынке даже 10% такой мощности невозможно без многократного роста ставок аренды и неизбежной огласки.
Атаковать какой-нибудь форк Биткоина намного дешевле. Например, возьмем Bitcoin SV — «истинный биткоин» по версии Крейга Райта. Его текущий хешрейт немного ниже 600 Пх/с, то есть для атаки 51% достаточно иметь 300 Пх/с. Эта мощность соответствует 2500 Antminer S19j Pro+, которые стоят около $6 млн и потребляют немногим более 8 МВт.
Такую мощность хэширования может обеспечить даже одна ферма среднего промышленного майнера. Оборудование для этой цели можно частично или полностью арендовать, то есть кратковременная атака обойдется значительно дешевле.
Наиболее уязвимы к атакам через майнинг блокчейны на PoW с относительно высокой стоимостью монеты и низким хешрейтом. Например, в прошлые годы неоднократно подвергался атакам блокчейн Ethereum Classic.
Proof-of-Stake
С блокчейнами на PoS сформировать единую картину сложнее, так как различия в консенсусе между вариациями протокола очень велики. Со времени запуска Peercoin — первого блокчейна на Proof-of-Stake — прошло уже 12 лет, и с тех пор появилось более десятка разновидностей этого консенсуса. Основные на сегодня — это модификации делегированного доказательства доли DPoS (BNB, Cardano, Solana и так далее), PoS 2.0 (Ethereum) и Tendermint (Cosmos, TON).
Более поздние версии PoS лучше защищены от захвата управления, но никакие технические меры на уровне консенсуса не могут гарантировать полной безопасности. А риски для операторов PoS (стейкеров и валидаторов) значительно выше, чем для PoW майнеров, так ка сроки окупаемости вложений (ROI), без учета изменения курса монеты, для них многократно выше. Кроме того, атакующий может инициировать ликвидацию депозитов «побежденных» валидаторов.
Доминирование в PoS достигается приобретением любыми способами контроля над необходимым количеством монет базового блокчейна в обороте. Контролирующая доля может изменяться в зависимости от правил и технических особенностей конкретного протокола. На современных версиях протоколов может использоваться величина от 33% до 67%, но «железобетонное» простое большинство (50+%) в долгосрочной перспективе остается столь же эффективным.
В отличие от Proof-of-Work, где владение монетами не дает никаких преимуществ на уровне консенсуса, захват доминирования в блокчейнах на PoS гораздо опаснее. Отобрать однажды достигнутое преимущество, не нарушая правил консенсуса административными мерами «в оффлайне», практически невозможно. Готовый идти до конца злоумышленник может фактически уничтожить блокчейн, и восстановить его можно будет только с помощью хардфорка на время, предшествующее моменту захвата.
Более подробно виды атак на протоколы Proof-of-Stake, в том числе через достижение централизации, описаны в этой статье. Не буду повторять уже изложенные подробности, но постараюсь сопоставить основные риски атак по аналогии с Proof-of-Work.
Обладатель контролирующей доли в большинстве блокчейнов на Proof-of-Stake может:
-
Изменять правила консенсуса для подконтрольных ему узлов (через модификацию кода кошелька, непосредственно формирующего блоки).
-
Изменять правила консенсуса для всех узлов сети (через инициирование изменений путем голосования держателей, доступно не во всех блокчейнах).
-
Единолично назначать валидаторов, формирующих блоки (блокчейны DPoS).
-
Избирательно подтверждать только нужные транзакции или отказывать в подтверждении мешающих ему. В том числе, продвигать своих MEV-ботов и препятствовать работе чужих.
-
Полностью остановить подтверждение транзакций, формируя только пустые блоки.
-
Проводить двойные или даже многократные траты своих активов (в пределах диапазона финализации состояния).
-
Штрафовать (лишать части или всего депозита) валидаторов, нарушающих установленные им правила консенсуса. Это позволяет в долгосрочной перспективе достижение 100% доминирования. Работает в Ethereum 2.х и некоторых других блокчейнах.
Он НЕ может:
-
Проводить транзакции с чужими активами (кроме «наказания» нарушителей). Монеты, пассивно лежащие в кошельке, не могут быть затронуты.
-
Управлять чужими смарт-контрактами, кроме отказа в проведении транзакций.
-
Менять правила консенсуса для неподконтрольных узлов в протоколах без голосования.
-
Вносить изменения в блоки, созданные до перехвата контроля. Зависит от архитектуры конкретного блокчейна, например, установки контрольных точек (checkpoints) через определенное количество блоков, или эпох в Эфириуме.
Разработчики блокчейнов на PoS реализуют различные методы защиты от доминирования крупных держателей. Например, команда Эфириума декларирует достаточность 1/3 добросовестных валидаторов для сохранения контроля. Однако очевидно, что все подобные меры могут быть эффективны только против «тупого» злоумышленника, не играющего на опережение и не способного первым применить те же самые меры против добросовестных пользователей. В реальности такую ситуацию сложно представить.
Инициатором атаки на PoS блокчейн может стать крупная биржа, фактически контролирующая активы клиентов, или взломавшие ее хакеры. Также не исключается возможность захвата кошельков государственными службами.
Цена атаки
Если считать стоимость атаки на PoS блокчейн «с нуля», то рассчитать ее достаточно просто: необходимо вычислить количество монет, достаточных для атаки по правилам конкретного протокола, и умножить на текущую рыночную стоимость монеты. После этого выделить деньги и купить. Например, половина текущей эмиссии ETH стоит всего лишь $111 млрд, а с учетом роста цены при массовой скупке сумма может вырасти в несколько раз. Казалось бы, такая атака стоит в десятки раз больше атаки на Биткоин, и это более чем достаточная защита. Но есть нюансы.
Первое, и самое очевидное — в стейкинге обычно задействована небольшая доля общей эмиссии. Например, в стейкинге Эфириума заблокированы менее 15% монет. Половина их по курсу на дату публикации будет стоить около $17 млрд, а треть — $11 млрд.
Главное же отличие PoS от PoW в первоначальном распределении монет и его влиянии. Для PoW предварительная генерация значительной доли монет (так называемый премайнинг) скорее исключение, чем правило, и никак не влияет на контроль над блокчейном. Однако для PoS это необходимость, и все 100% монет для начального распределения генерируются сразу. Исключение - Эфириум, который более 7 лет работал на Proof-of-work. Однако и в нем первые 60 млн ETH были проданы на ICO и распределены в первом блоке.
Для запуска стейкинга в новом блокчейне необходимо сразу иметь достаточное число монет, которые можно заблокировать в кошельках стейкеров. Прибыль от стейкинга также достается первоначальным держателям. И они вольны ей распоряжаться — продавать или удерживать, увеличивая свою долю и становясь китами. Все крупные держатели в новом PoS-блокчейне определяются на старте. Их затраты состоят в покупке токенов на ICO, или в трудозатратах на разработку и продвижение проекта, за что они получают вознаграждение в токенах.
Первоначальное распределение очень часто проводится среди узкого круга причастных к проекту, даже если монеты продаются на публичном аукционе. Во-первых, монеты новых проектов не всегда пользуются широкой популярностью, а во-вторых заинтересованному игроку, не стесненному в средствах, несложно купить для себя большую часть лотов аукциона. Значительная часть сгенерированных в первом блоке монет, как правило, остается под контролем разработчиков. Часть из них впоследствии распространяется через раздачи и вознаграждения, но доля разработчиков крайне редко опускается ниже 10-15%, и это только «задекларированные» монеты. Ничто не мешает разработчикам, например, продать часть монет на аукционе самим себе, усилив тем самым скрытый контроль. Все эти монеты достаются им полностью бесплатно или с минимальными затратами на комиссии.
Еще одна важнейшая особенность PoS состоит в том, что с точки зрения контролирующей доли однажды приобретенные монеты не обесцениваются и не устаревают. Также они не требуют никакого содержания, а наоборот приносят прибыль. Если все имеющиеся у «кита» монеты участвуют в стейкинге, то их количество увеличивается в соответствии с алгоритмом, а доля постепенно растет, так как ни в одном блокчейне в стейкинге не находятся 100% монет.
Таким образом, в большинстве PoS-блокчейнов возможность скрытого контроля заложена изначально, а доля крупных держателей постепенно увеличивается за счет стейкинга и комиссий валидаторов. Уменьшить свою долю они могут только по собственному желанию, продав часть монет на рынке.
Экономически PoS реализует идеальную монополистическую модель — даже при самом идеальном выполнении правил консенсуса богатые богатеют, а бедные беднеют естественным, или, скорее, предопределенным путем. Перераспределение активов возможно только по инициативе «богачей».
Итоговое сравнение рисков централизации PoW и PoS
Объединим в таблицу ключевые особенности двух главных методов консенсуса и связанных с ними рисков централизации.
Параметр доминирования |
Особенности |
|
PoW |
PoS |
|
Управляющий ресурс |
Мощность хэширования |
Владение монетами |
Доля уверенного контроля |
>50%, гарантированно 100% |
От 33%, гарантированно выше 67% |
Фактор случайности |
Средний |
Низкий (в DPoS нулевой) |
Стоимость начального приобретения без премайна |
Не зависит от премайна. Формируется от рыночной стоимости оборудования и инфраструктуры. |
Очень высокая |
Стоимость начального приобретения с премайном |
Зависит от начальной доли и причастности к распределению |
|
Стоимость удержания |
Высокая |
Отрицательная (удержание приносит прибыль) |
Постепенное обесценивание ресурса |
Есть |
Нет |
Накопительный эффект владения ресурсом |
Нет |
Есть |
Долгосрочное накопление доли |
Нет |
Есть |
Общий уровень контроля |
Средний |
Высокий |
Возможность полной остановки блокчейна |
Есть (при сохранении расходов на эксплуатацию) |
Есть (не требует расходов) |
Возможность конфискации чужих монет |
Нет |
Есть (при выполнении условий) |
Возможность возврата контроля без административного вмешательства |
Есть |
Нет |
Во второй части статьи мы расскажем о других, менее очевидных рисках централизации криптовалют.
Продолжение следует.