Поговорим о том, что именно подразумевают под “децентрализацией” в контексте Биткойна, пройдёмся по различным её аспектам, рассмотрим аргументы скептиков и обсудим новейшие доводы о возможной централизации майнинга вокруг компании Bitmain.
Навигация:
- Децентрализация Биткойна и где её искать
- Достаточная (де)централизация? Критика децентрализации Биткойна
- Майнинговые пулы становятся проблемой?
- Свидетельства централизации биткойн-майнинга вокруг Bitmain
- Бой с воображаемым противником: оптимистический комментарий по поводу централизации proof-of-work
- Минимально необходимый резервный фонд для майнингового пула: модель BitMEX Research
- В заключение
Децентрализация Биткойна и где её искать
Одним из неоспоримых и часто упоминаемых достоинств Биткойна является его децентрализация. Часто утверждается, что сеть Биткойна предлагает уровни децентрализации, доступности и распределения, несравнимые ни с одной другой криптовалютой. Но насколько децентрализован Биткойн на самом деле? И как это измерить? Прежде чем углубляться в эти вопросы, давайте проясним понятия централизации и децентрализации, поскольку с этим нередко возникает путаница.
Чтобы дать чёткое определение, динамику централизации/децентрализации можно понимать как степень концентрации или рассеивания полномочий между участниками системы. Под «полномочиями» в данном случае понимается способность влиять на работу и правила системы, как в злонамеренных, так и в благих целях. Исходя из этого, измерение степени централизации системы подразумевает количественное определение минимального числа субъектов, участников, необходимых для изменения её функционирования или правил. Чем это число меньше, тем выше степень централизации. В своей основополагающей статье 2017 года Balaji S. Srinivasan и Leland Lee ввели для этой цели интересную метрику — коэффициент Накамото.
Производная от кривой Лоренца, используемой при расчёте коэффициента Джини, коэффициент Накамото определяет минимальное количество участников, необходимое для компрометации или захвата контроля над системой. Например, в известном сценарии с хешрейтом Биткойна, если мы предполагаем, что пять майнинговых пулов в совокупности обладают 50+1 % от общего хешрейта сети, то это число будет равно пяти. Это означает, что простого большинства в 50%+ хешрейта будет достаточно для выполнения двойной траты на блокчейне. Однако критический порог может меняться в зависимости от других переменных.
Различные аспекты централизации
Теперь обратимся к основной проблеме, обозначенной авторами той основополагающей статьи: выявлению подсистем, критически важных для функционирования системы. Когда речь идёт о Биткойне, фокусировка исключительно на концентрации хешрейта (т.е. на майнерах) не отражает весь спектр централизации/децентрализации сети и упускает из виду потенциал для атаки 51%.
Шринивасан и Ли в своей статье предлагают ещё пять измеряемых подсистем сети Bitcoin: клиентская платформа, разработчики кода, узлы, биржи и иные кастодиальные сервисы и собственность. Итак, шесть измерений централизации в сети Биткойн, по мнению авторов, выглядят следующим образом:
- централизация программного клиента,
- централизация владения,
- централизация узлов,
- централизация разработки,
- централизация бирж/кастодиальных сервисов,
- централизация хешрейта.
К этому, вероятно, мы можем добавить ещё одно измерение:
- централизация аппаратного обеспечения.
Такой список выглядит исчерпывающим, однако не хватает качественной оценки этих измерений: какие из них действительно являются ключевыми для работы сети Биткойна, а какие нет?
Например, можно утверждать, что переменные программного клиента или владения не так важны для оценки децентрализации Биткойна как сети.
В первом случае Bitcoin Core является де-факто стандартным программным клиентом на сегодняшний день. Однако стоит отметить, что это ПО с открытым исходным кодом, первоначальным автором которого является сам Сатоши Накамото. И до тех пор, пока оно остаётся открытым и активно поддерживаемым, его доминирование не обязательно подразумевает уязвимость. Важно проводить различие между гегемонией Bitcoin Core и монополией, поскольку в целом существуют и другие операционные клиенты — такие как Bitcoin Knots, BTCD, Libbitcoin, BitcoinJ, Bitcoin Unlimited, Gocoin — с поддержкой протокола Биткойна. На практике, однако, очень немногие узлы сети используют эти альтернативы, отдавая предпочтение оригинальной реализации Накамото. В этой связи сам Сатоши Накамото говорил ещё в 2010 году: «Я не верю, что вторая, совместимая реализация Биткойна когда-либо будет хорошей идеей».
Качественная оценка потенциального ущерба (от 1 до 5): 2
Что касается второго аспекта — распределения владения биткойнами, — то он, несомненно, имеет значительные социально-экономические последствия (и чем дальше, тем больше), однако не затрагивает напрямую инфраструктуру Биткойна. Поскольку Биткойн основан на алгоритме proof-of-work, влияние простых владельцев BTC на узлы и работу протокола практически нулевое. Централизация владения может стать проблемой только в том случае, если концентрация монет достигнет таких экстремальных уровней, что подорвёт сетевой эффект, повлияв на практическое использование в качестве средства обмена и сбережения. К счастью, как бы ни было поляризовано распределения богатства в Биткойне, от этой точки мы чрезвычайно далеки, и по различным анализам, с ростом популярности Биткойна концентрация сатоши постепенно снижается.
Качественная оценка потенциального ущерба (от 1 до 5): 3
Напротив, такие подсистемы, как узлы и поддержка кода, играют ключевую роль в достижении подлинной децентрализации сети, являясь потенциально наиболее важными точками в системе Биткойна. Риск захвата узлов и последующих хардфорков или скоординированных злонамеренных действий в отношении протокола представляет собой значительную и долговременную угрозу для доверия к сети. Однако вероятность таких событий уже сейчас невелика и постоянно снижается со временем, учитывая растущее число активных либо быстро активируемых узлов (около 19 тыс. и 57 тыс. соответственно по последним известным данным) и их географическое распределение.
Качественная оценка потенциального ущерба (от 1 до 5): 5
Концентрация разработчиков Bitcoin Core — т.н. core devs — остаётся очень высокой и, возможно, возрастает с определённой точки зрения: программистов, активно занимающихся написанием и поддержкой клиента, относительно немного, несмотря на то, что это критически важная функция для всей технологической инфраструктуры сети Bitcoin. На сегодняшний день, согласно данным GitHub, в среднем от 40 до 60 разработчиков ежемесячно вносят свой вклад посредством коммитов. Они участвуют в проекте на добровольных началах, и на практике в течение многих лет в комьюнити разработчиков Биткойна наблюдается довольно высокая текучка кадров: в него входят как «исторические» разработчики, присоединившиеся к проекту ещё на ранних версиях Bitcoin Core, так и множество новичков. Многие исторические фигуры за эти годы ушли, кто-то из них позже вернулся, некоторые разработчики вносят свой вклад постоянно и регулярно, другие — ограниченно и спорадически. В этой группе, не имеющей формализованной иерархии (да и как она может быть в проекте с открытым исходным кодом?), ещё меньше ключевых разработчиков, тех, кто направляет работу комьюнити. По данным GitHub, с самого начала существования проекта 30% известных коммитов в мастер-репозиторий Bitcoin Core были сделаны всего двумя разработчиками, а практически 25% (7347 из 29 822 коммитов) — одним только Владимиром ван дер Лааном (Wladimir van der Laan), бывшим ведущим мейнтейнером Bitcoin, огромный вклад которого в развитие сети неоспорим. После его ухода в 2022 году в Bitcoin Core нет единого координатора работы над кодом. На сегодняшний день разработку Bitcoin Core направляет ограниченное руководство, состоящее из нескольких старших разработчиков, включая Геннадия Степанова, Michael Ford, Ava Chow и Gloria Zhao, каждый из которых курирует определённый компонент клиента.
Резонный вопрос: не является ли настолько немногочисленная децентрализованная группа разработчиков/мейнтейнеров ахиллесовой пятой различных подсистем Биткойна, делающей всю структуру уязвимой для атак. Огромная, сложная и очень ценная (не только с экономической точки зрения) инфраструктура сегодняшней сети Bitcoin опирается на часто неполный рабочий день и в основном неоплачиваемую работу нескольких энтузиастов и майнеров. С одной стороны, верно, что операторы отдельных узлов имеют окончательное право голоса при принятии каждого нового обновления/версии клиента Bitcoin Core. С другой стороны, давайте спросим себя: а сколько узлов на самом деле анализируют новый код на предмет уязвимостей, вредных изменений или ошибок перед установкой обновлений?
Что бы произошло, если бы, чисто гипотетически, в ограниченном кругу ключевых разработчиков и майнеров происходило постепенное проникновение диверсантов с целью сначала завоевать доверие и влияние в сообществе, а затем влиять на новые версии кода? Они могли бы, например, закладывать в коде виртуальные бомбы замедленного действия (в виде багов или уязвимостей нулевого дня). Да, это выглядит как чересчур витиеватая и сложная в исполнении гипотеза, но не невозможная, особенно если иметь в виду вероятность очень постепенной тайной операции со стороны структур, имеющих в своём распоряжении значительные финансовые, человеческие и технологические ресурсы, плюс сильную мотивацию к разрушению сети, — таких как разведывательная служба могущественного государства (или нескольких). Каковы будут последствия такой операции для Биткойна в случае её успеха? Вероятно, весьма серьёзными, если не экзистенциальными. Она может вызвать хаос среди владельцев узлов, невольно внедривших вредоносное обновление, привести к принудительным хардфоркам, что крайне негативно отразится на стабильности, целостности и доверии к Биткойну. Того, чего не достичь технологической брутфорс атакой, можно добиться методами социальной инженерии, направленной на разрушение консенсуса.
Сложно оценить вероятность успеха такой атаки на Bitcoin Core, но малое количество людей, следящих за разработкой и поддержкой ключевого программного клиента, а также практически нулевой интерес со стороны более широкого сообщества пользователей к их ценной работе (и, что не менее важно, к их вознаграждению), по-видимому, делают эту подсистему особенно уязвимой для хорошо продуманной атаки.
Качественная оценка потенциального ущерба (от 1 до 5): 4
Что касается бирж и кастодиальных сервисов, тренд на большую или меньшую централизацию здесь не вполне однозначен. Притом что количество бирж существенно выросло по сравнению с первыми годами существования Биткойна (помните MtGOX?), львиная доля спотовых объёмов торгов против фиатных валют по-прежнему сосредоточена у нескольких крупных игроков (Binance, Bybit, Coinbase, OKX, Kraken, Bitfinex и т.д.). В частности, на сегодняшний день три крупных субъекта контролируют более 55% биткойнов, находящихся на хранении у третьих лиц, в то время как на Binance приходится 30% от спотовых торгов биткойном на всех публичных биржах. Риски чрезмерной централизации в этой конкретной подсистеме связаны не столько с безопасностью самой сети Биткойна, сколько с возможностью конвертации BTC в фиатные валюты (и обратно) и безопасностью тех, кто делегирует им хранение своих BTC.
В первом сценарии усиление централизации (сокращение числа бирж) сделает систему более уязвимой для скоординированных юридических или кибератак, направленных на нарушение работы или потенциальное разрушение каналов обмена между фиатными валютами и биткойном. Это соответствует логике, в которой чем меньше дверей, тем их легче запереть.
Во втором сценарии в условиях олигополистического режима те, кто предпочитает кастодиальные решения самостоятельному хранению биткойнов, столкнутся с ростом риска контрагента. Это произойдёт в результате снижения переговорной силы пользователей по отношению к кастодиальным сервисам, которые в этом случае смогут навязывать более обременительные экономические условия и более деспотичные политики (например, в отношении доступа к пользовательским BTC), чем в условиях конкуренции. Кроме того, наличие всего нескольких крупных операторов, контролирующих от имени своих клиентов значительные объёмы BTC, значительно повышает риск злоупотреблений (например, практики частичного резервирования без согласия клиентов), взлома (чем крупнее цель, тем она привлекательнее) и политико-регуляторного вмешательства (включая сговор с гос. органами, чрезмерное регулирование и бюрократизацию) по сравнению с более раздробленной и конкурентной системой хранения.
На дальнем конце этого спектра рисков контрагентов находится возможность атаки 6102 — масштабного захвата биткойнов, хранящихся на биржах и кастодиальных кошельках в пределах определённой юрисдикции, путём принятия законодательных мер. Хотя это не окажет прямого влияния на работу сети Биткойна, это, вероятно, подорвёт доверие к Биткойну как к безопасному средству платежей и сбережений среди широкой публики, тем самым поставив под угрозу успех Биткойна как свободных и доступных для всех цифровых наличных.
Качественная оценка потенциального ущерба (от 1 до 5): 3
Здесь мы не будем подробно останавливаться на подсистеме хешрейта и майнинга — вопрос о возможности атак 51% разбирался бесчисленное количество раз, а новые аргументы в отношении её централизации мы обсудим ниже. Напомню лишь наиболее распространённые сценарии атак: двойное расходование, цензура транзакций и атака пустыми блоками. Последствия этих атак могут быть ужасными, и недооценивать их не стоит, однако есть и немало статей, объясняющих ограничения этого типа атак и контрмеры, которые могут быть приняты консенсусом узлов для их предотвращения либо эффективного противодействия. Однако в целом она остаётся одной из самых хрупких и уязвимых подсистем Биткойна, хотя бы ввиду степени своей централизации: фактически, два майнинговых пула — Foundry USA и Antpool — контролируют более 50% хешрейта сети.
Качественная оценка потенциального ущерба (от 1 до 5): 4
Наконец, переходя к аспекту оборудования (не упоминавшемуся в статье Шринивасана и Ли), нам необходимо проанализировать диверсификацию майнингового оборудования с точки зрения производителей, моделей и занимаемых ими долей на рынке хешрейта Биткойна. Неоспоримо, что к сегодняшнему дню количество производителей оборудования для майнинга (ASIC) значительно увеличилось по сравнению с тем, что было в прошлом. К числу крупнейших компаний в этом секторе относятся Bitmain, Whatsminer, Canaan, Zhejiang Ebang Communication, Halong Mining, Helium, Bitfury, Bee Computing и HIVE Blockchain. Однако в общем хешрейте сети доминируют всего несколько моделей ASIC и ещё меньше производителей. По оценке Coinmetrics, более 70% мирового хешрейта приходится на ASIC от одной ведущей компании — Bitmain, — а на долю всего трёх производителей (Whatsminer, Canaan и Ebang) приходится практически вся вычислительная мощность сети Биткойна. Кроме того, подавляющая часть хешрейта генерируется всего семью моделями ASIC от этих же компаний: Antminer S19xp, Antminer S19jpro, Antminer S19, Canaan 1246, Antminer S17, MicroBT m20s и MicroBT m32.
Риски такой централизации оборудования по моделям и производителям многочисленны. Поскольку крупных производителей очень мало (и расположены они в основном в Китае), правительства и законодатели соответствующих стран могут запросто заставить их остановить производство на своих предприятиях, передать партии изготовленного оборудования или тайно внедрить аппаратные бэкдоры и трояны в свои модели ASIC. Последствия этого немедленно скажутся на подсистеме майнинга, вызвав нестабильность и потенциальный обвал хешрейта сети, что приведёт к значительным экономическим потерям для майнеров, использующих скомпрометированные ASIC или не имеющих возможности приобрести новые. Значительное и долговременное снижение хешрейта снизит безопасность всей сети, поскольку увеличит вероятность атаки 51% — возможно, именно тем игроком, который инициировал аппаратную атаку. Здесь мы видим, как атака на одну слабо децентрализованную подсистему может практически ослабить другую и тем самым вызвать цепную реакцию с опасными последствиями для целостности сети Биткойна.
Качественная оценка потенциального ущерба (от 1 до 5): 3
Опираясь на этот неполный обзор различных подсистем Биткойна и их уязвимостей, сведём эти шесть измерений в единую таблицу. Эта таблица будет измерять риск централизации в виде матрицы между вероятностью (P) и частотой возникновения ущерба (D, т. е. значимостью воздействия на сеть), иллюстрируя динамику в сторону увеличения или уменьшения централизации.
Балл вероятности (P) присваивается по шкале от 1 до 5 на основе обратной нелинейной функции от количества субъектов, необходимых для достижения заданного критического порога централизации. Другими словами, чем больше субъектов требуется для достижения критического порога, тем ниже балл вероятности. Критический порог представляет собой процент (иногда субъективно определённый) от общего расчётного числа субъектов в данной подсистеме, после которого система становится серьёзно уязвимой для компрометации. В некоторых случаях этот порог объективен, как в случае с майнинговой сетью, в других — более произволен, как в случае с разработчиками или клиентским ПО; однако в целом его можно понимать как переломный момент централизации.
Переменная ущерба (D) также оценивается в баллах от 1 до 5. Она связана с негативными последствиями атаки на подсистему для безопасности, стабильности и функциональности сети Биткойн в целом.
Эта последняя оценка, безусловно, является субъективной и может быть подвергнута критике и последующему пересмотру на основе более глубокого анализа.
Наконец, оценка риска, суммирующая риск централизации каждой подсистемы, получается из произведения этих двух оценок.
Географическая и экономическая децентрализация
Можно выделить и другие варианты дихотомии децентрализация – централизация, пересекающиеся с семью только что проиллюстрированными типами: например, географическая (по юрисдикциям) и экономическая (по экономическим субъектам). Географическая децентрализация зависит от того, где физически и юридически находятся узлы, кошельки, биржи/кастодианы и майнеры? Экономическая децентрализация, с другой стороны, касается экономической принадлежности этих субъектов — например, кому принадлежат майнинговые пулы или кто контролирует биржи.
На первый взгляд может показаться, что географический и экономический аспекты практически полностью повторяют друг друга, но на самом деле это вовсе не так. Например, может существовать экосистема Биткойна, в которой есть множество независимых майнеров, но все они находятся в пределах одной юрисдикции и, следовательно, подвержены одним и тем же политико-правовым рискам. В этом случае экономическая централизация (централизация владения) будет низкой, а географическая — очень высокой. И наоборот, может существовать множество майнинговых предприятий, разбросанных по всему миру, но управляемых одним и тем же экономическим субъектом, и поэтому фактически являющихся единой точкой отказа.
Тот же аргумент можно в равной степени применить к узлам, аппаратному обеспечению или структуре владения биткойнами. В мире, где доминируют государства и крупные корпорации, пренебрежение этими факторами может оказаться фатальным. Само по себе количество участников подсистемы Биткойна мало что говорит о децентрализации, если они в основном сосредоточены в одной юрисдикции или управляются одним и тем же экономическим субъектом. Поэтому при любых попытках измерить степень децентрализации Биткойна необходимо учитывать как качественный географический, так и экономический параметры.
Что меняется с появлением спотовых ETF
Появление биржевых фондов на спотовый биткойн, бумаги которых торгуются на крупнейших американских рынках ценных бумаг, может оказать значительное влияние на децентрализацию сети, особенно в отношении подсистемы бирж и кастодиальных сервисов. Хотя инвестиции в ETF значительно упрощают доступ к рынку биткойна по сравнению с другими фидуциарными решениями, этот вариант удваивает (а то и утраивает) риски контрагента для инвесторов. Те, кто «инвестирует в биткойн» через ETF, фактически не владеют самим активом; они подвержены рискам контрагента как со стороны управляющего биржевым фондом, так и со стороны кастодиана/депозитария, на который этот ETF опирается (если только управляющий фондом не выбрал маловероятный вариант самостоятельного хранения), а также рискам посредника/брокера, через которого они приобретают инструмент. На практике поговорка «Не твои ключи – не твои монеты» сводится к простому «Не твои монеты. До свидания» — особенно в случае гипотетической атаки 6102 на ETF.
На макроуровне те же аргументы, что и в отношении бирж и кастодиальных сервисов, применимы и к пассивным фондам биткойна: чем больше они используются институциональными и розничными инвесторами как форма «инвестиций в биткойн», тем больше биткойнов абсорбируют эти фонды. Соответственно, тем больше возрастает их принудительная власть над пользователями и контрактная (т. е. экономическая) власть над другими подсистемами сети Биткойна. Если бы конкретный биткойн-ETF со временем набрал значительную (а то и доминирующую) долю биткойнов в обращении и систематически использовал свои доходы для субсидирования разработчиков Bitcoin Core, он мог бы влиять на действия разработчиков, направлять развитие клиента и, через это, направление развития всей сети в соответствии со своими желаниями. В этом сценарии централизация одного аспекта (кастодианов через ETF) приводит к централизации гораздо более важного измерения, о котором говорилось выше — разработки Биткойна.
Достаточная (де)централизация?
Скепсис в отношении реального уровня децентрализации Биткойна, и в первую очередь его майнинговой сети и разработки, имеет длинную историю. Бутерин в посте 2017 года так формулировал сомнения в отсутствии координации между биткойн-майнерами:
«В случае с блокчейн-протоколами математическое и экономическое обоснование безопасности консенсуса часто в значительной степени опирается на модель несогласованного выбора, или предположение, что игра состоит из множества мелких акторов, принимающих решения независимо друг от друга. Если в proof-of-work системе один участник получает более 1/3 майнинговых мощностей, он может получить огромную прибыль за счёт эгоистичного майнинга. Но можно ли сказать, что модель нескоординированного выбора реалистична, если 90% майнинговых мощностей сети Bitcoin скоординированы достаточно хорошо, чтобы собраться на одной конференции?» (Виталик Бутерин «The Meaning of Decentralization», 2017)
В исследовании 2022 года авторы обращают внимание на высокий уровень централизации биткойн-майнинга в ранние годы существования Биткойна. По словам авторов исследования, они смогли:
«…оценить эффективный размер популяции децентрализованной сети Биткойна, подсчитав частоту полос, в которых все блоки добываются одним агентом (ниже слева) или двумя агентами (ниже справа). Эти показатели сравниваются с ожидаемыми значениями для идеализированных сетей, состоящих из P агентов с одинаковыми ресурсами. Сравнение показывает, что эффективный размер популяции составляет примерно 5 человек, что является крошечной долей от общего числа участников». (Cooperation among an anonymous group protected Bitcoin during failures of decentralization)
Совершенно справедливо, что Биткойн в 2009 году был запущен одним майнером, Сатоши Накамото. Однако суть позиции скептиков состоит в том, что и два года спустя в Биткойне доминировали пять майнеров, и по сей день в сети доминируют 5 или менее майнинговых пулов.
О наличии «хорошей координации» между майнинговыми пулами писали и Игорь Макаров с Антуанеттой Шоар в своей книге 2021 года:
«Шесть из крупнейших майнинговых пулов зарегистрированы в Китае и имеют тесные связи с Bitmain Techonologies, крупнейшим производителем оборудования для майнинга Биткойна». (Igor Makarov & Antoinette Schoar, «Blockchain Analysis of the Bitcoin Market»)
David Rosenthal, давний скептик в отношении децентрализации криптовалютных протоколов, отмечал ещё в 2014 году:
«Когда появляется новая, более эффективная технология, снижающая стоимость удельного вклада в P2P-сеть, она не становится доступной мгновенно для всех участников. По мере наращивания производства ограниченное предложение преимущественно достаётся лучшим клиентам производителя, которые и будут крупнейшими участниками P2P-сети. К тому времени, когда предложение увеличится настолько, что дойдёт до мелких участников, наиболее ценная часть срока полезного использования технологии уже закончится». (David Rosenthal, Economies of Scale in Peer-to-Peer Networks)
В декабре 2021 года Alex de Vries и Christian Stoll подсчитали, что среднее время, за которое технология становится нерентабельной, составляет менее 1,29 года. По их мнению, с момента появления на рынке майнинговых ASIC было очевидно, что, помимо доступа к дешёвой или бесплатной электроэнергии, есть два ключа к прибыльному майнингу:
- Достаточно тесные связи с Bitmain, чтобы получать новейшие чипы на раннем этапе их 18-месячной экономической жизни.
- Наличие масштаба для покупки чипов Bitmain в достаточно больших количествах, чтобы получить ранний доступ.
Действительно ли укрупнение майнинга представляет собой настолько серьёзную проблему? Или скептики намеренно сгущают краски, не делая разницы между майнерами и майнинговыми пулами? Давайте разберёмся.
Майнинговые пулы становятся проблемой?
Майнеры оказывают экосистеме Биткойна ценную услугу. В обмен на работу, которую они выполняют для защиты сети, они получают от этой сети вознаграждение. Этот продуманный и элегантный дизайн Сатоши, безусловно, является одним из замечательных аспектов Биткойна. Но всё чаще люди забывают о том, что майнинг — это нечто большее, чем просто хеширование.
Человек, участвующий в этом процессе, должен запустить полную ноду, чтобы получить достоверную информацию об актуальном состоянии блокчейна, а затем приступить к созданию нового блока. Это включает в себя проверку валидности предыдущего блока, обнаружение неподтверждённых транзакций и, как правило, отбор наиболее прибыльных из них, создание транзакции с выплатой вознаграждения на собственный адрес, построение множества хеш-деревьев из этих транзакций и, наконец, нахождение валидного хеша для всего блока. Транзакции в шаблоне блока будут постоянно меняться по мере передачи в сеть новых транзакций, и когда новый блок будет найден кем-то другим, майнер должен переключиться на построение следующего блока уже на его основе, а также отбросить все транзакции, уже записанные в блокчейн, и наполнить новый шаблон блока.
Активация форка
Как видите, в нахождении валидного блока хеширование — это только часть процесса. ASIC для биткойн-майнинга, с другой стороны, умеют только хешировать. Все остальные аспекты майнинга в нынешних условиях обычно делегируются майнинговым пулам. Это породило некоторую путаницу. Например, при любых обстоятельствах, когда происходит активация софт-форка путём изменения битов версий в шаблонах блоков, люди будут ссылаться на этот процесс как на MASF — «Miner Activated Soft Fork» — и кому-то всегда придётся объяснять, что эта ответственность лежит исключительно на пулах, а пулы и майнеры — вовсе не одно и то же. Они также могут указать на то, что майнеры в конечном счёте всё равно несут ответственность, поскольку, если они желают обновления, а их пул не хочет, они могут просто сменить пул.
[Для ясности, в остальной части этой статьи я буду называть «хешерами» тех, кто участвует исключительно в хешировании, оставляя все прочие функции майнинга на откуп пулам.]
Возвращаясь к софт-форкам, в нынешних условиях, когда >99% блоков создаются одной и той же дюжиной субъектов/организаций, точнее было бы называть их Pool-Activated Soft Forks, чего никто не делает, и это способствует возникновению опасной иллюзии — что майнинг может считаться децентрализованным только благодаря распределению хешрейта. Однако это утверждение попросту неправдоподобно в условиях, когда весь хешрейт принадлежит крошечной группе пулов, и, таким образом, содержимое блокчейна в конечном счёте не будет включать ничего, что эти несколько организаций считают неприемлемым; плюс возникает ещё целый ряд других проблем.
Отказавшись от всех остальных аспектов майнинга, кроме хеширования блоков, построенных пулами, майнеры Биткойна в значительной мере отказались от критически важного компонента своей роли. И тот факт, что это не только возможно, но является путём наименьшего сопротивления, указывает на то, что у нас есть системная проблема.
Пулы и рынки блокчейн-пространства
Последствия того, что майнеры выполняют исключительно хеширование, а всё остальное делает пул, выходят далеко за рамки активации софт-форков. Например, сегодня майнеры совершенно не в курсе, как будут выглядеть блоки после нахождения валидного хеша. То есть майнер выполняет работу, слепо полагаясь на то, что блок содержит только желаемые транзакции. Но, например, такие блоки, как этот (знаменитый блок, положивший начало ordinals-мании) представляют собой вопиющее нарушение этого доверия. Обратите внимание, что комиссия за транзакции, которую получили майнеры, работавшие над этим блоком, составила всего ~$200 в BTC-эквиваленте — в отличие от блоков по обе стороны от него, со средним размером комиссии ~5000 долларов в BTC.
Место в блокчейне, пространство блока, имеет ценность — это часть того, что обеспечивает работоспособность Биткойна в долгосрочной перспективе. Но в мире, где всего несколько игроков могут добавить в блокчейн шаблон блока, который они создали по собственному усмотрению, эти же субъекты получают почти эксклюзивное право продавать это пространство и получать за это вознаграждение. Будут ли они открыто сообщать своим майнерам, что они это делают? Конечно, не. И станут ли они в дальнейшем передавать своим хешерам платежи, полученные за подобную скрытую продажу блокчейн-пространства?
Проще говоря, хотя стимулы пула и его хешеров в отношении максимизации прибыли по большому счёту совпадают, у пула есть возможность продавать блокчейн-пространство для других целей, кроме обычных биткойн-транзакций, в то время как доход майнеров более ограничен, если только пул не примет добровольного решения в пользу прозрачности, согласившись делиться подобными сторонними доходами. Даже если они это сделают, проверка подобной активности подразумевает разрешение пула — в отличие от доходов от субсидий на блок и комиссий за транзакции.
Дальнейшие последствия такого положения пулов как централизованных конструкторов шаблонов блоков Биткойна вытекают из того факта, что на более фундаментальном уровне мы получаем двенадцать «суперузлов» со своими собственными «супермемпулами«.
В перспективе это приводит к тому, что люди начинают иметь дело непосредственно с пулами, полностью игнорируя мемпулы. Кто-то уже утверждает, что мемпул как явление обречён и что нынешняя практика централизованного построения шаблонов блоков лишь ускоряет этот процесс.
Модели выплат в пулах
Почти все пулы платят своим хешерам по системе FPPS (Full Pay Per Share) либо аналогичной. Исключение составляет ViaBTC, предлагающий PPLNS (Pay Per Last N Shares) в дополнение к FPPS. Antpool тоже предлагает PPLNS, но тогда хешеры должны отказаться от всех доходов от комиссий за транзакции — это говорит о том, что FPPS не является хорошо работающей моделью в мире, где относительная роль комиссий за транзакции в доходе майнеров существенно возрастает. Надо упомянуть также, что пул Braiins (ex-Slushpool) использует систему, называемую «score», на практике очень похожую на PPLNS.
В чём причина такого подавляющего предпочтения FPPS? С точки зрения хешеров, они получают деньги независимо от того, что происходит в блокчейне. Это соответствует цели объединённого майнинга — стабилизации доходов. FPPS предлагает более стабильные выплаты, поскольку пул производит выплаты на основе прогнозируемого дохода и самостоятельно рассчитывается с блокчейном.
Это очень облегчает жизнь майнерам, которые хотят свести к минимуму проблемы, связанные с нестабильностью денежного потока, но, конечно, есть и недостатки, основные из которых я надеюсь описать здесь.
Прежде всего, FPPS подразумевает кастодиальное хранение всех свеженамайненных биткойнов пулом. Они не могут быть переданы майнерам в течение как минимум 100 блоков, поскольку свежедобытые биткойны не могут быть потрачены до этого момента, и на практике добытые монеты не имеют ничего общего с тем, что майнеры в конечном счёте получают при выводе средств из пула. Риски же хранения биткойнов у посредников, полагаю, должны быть очевидны любому читающему эту статью, так что это я опущу и перейду к другим вопросам, связанным с FPPS.
Следующая проблема связана с тем, что в целом FPPS-пул является значительным посредником между хешерами и самой сетью. Мы уже выяснили, что хешеры не знают даже, как в итоге будут выглядеть блоки, над которыми они работают. И в целом FPPS означает, что теперь их также не волнует, будут ли блоки вообще найдены — это проблема пула. Игнорируя повышенную предсказуемость выплат (при том допущении, что пул не решит присвоить средства хешеров), мы должны признать возникающие при этом компромиссы.
Майнеры, получающие выплаты непосредственно от сети — что возможно при самостоятельном майнинге или в альтернативных схемах, таких как PPLNS, — могут рассчитывать на причитающееся им вознаграждение в полном объёме, включая комиссии за транзакции. FPPS-пул может выполнять такой расчёт только постфактум, потому что просто не существует способа заранее точно предсказать сумму комиссий при определении того, сколько хешеры фактически получат за долю пуле. Пул не может просто предположить, что комиссии будут иметь значение больше 0, и начислять их хешерам по мере майнинга, потому что, если комиссии упадут ниже этого значения, пул просто будет платить хешерам из своего кармана. Пул должен периодически разделять полученное реальное вознаграждение и доначислять его хешерам, как только оно окажется в распоряжении пула.
С точки зрения хешера, это требует полного доверия к пулу, поскольку независимая проверка практически невозможна без полной прозрачности и сотрудничества последнего. Раньше, как уже говорилось выше, эта проблема была не столь актуальна, поскольку основную часть доходов от майнинга составляли субсидии на блок, и лишь небольшая часть приходилась на комиссии за транзакции, но это всё больше меняется и в будущем тенденция к усилению роли комиссий в доходе майнеров должна только усилиться. При этом объём получаемых комиссий сложнее предсказать и контролировать при использовании пула, чем субсидии на блок.
В отличие от такой схемы выплат, как PPLNS, где хешеры соглашаются на повышенную волатильность выплат (удача пула становится и удачей хешера), мы видим, что экосистема майнинга в подавляющем большинстве случаев делает выбор в пользу постоянства выплат над возможностью проверить полученные данные. Более того, некоторые хешеры осознанно предпочитают именно такой подход, на всякий случай желая соблюсти перед государственными органами видимость такого «провайдера услуги хеширования», полностью отвязанного от Биткойна. Некоторые даже гордятся этим. Это происходит потому, что в целом FPPS представляет собой настолько радикальное отклонение от идеальной динамики майнер – пул, что трудно даже назвать то, что делает хешер, собственно «майнингом Биткойна».
По сути, FPPS-пул — это как большой соло-майнер, который платит сторонним хешерам за решение своих блоков. Далее у них предусмотрен какой-то внутренний и непрозрачный процесс, посредством которого майнер определяет, сколько платить своим хешерам. Как дополнительная иллюстрация этому, хешеры могут (и в некоторых случаях будут) даже получать свои выплаты в чём-то ином помимо BTC.
А почему нет? Если вам всё равно, будут ли найдены блоки, не говоря уже о том, как они будут выглядеть, почему бы просто не получать фиатные выплаты от своего майнера-заказчика? BTC не всегда является наиболее удобным вариантом, но даже если бы это было так, вполне разумно представить себе развитие этой ситуации, в котором «хеширование» может выполняться сколь угодно большим количеством субъектов, но всё это делается от имени крошечной группы «пулов», без чьего одобрения не будет выполнена ни одна ончейн-транзакция.
Кто вообще хеширует?
Давайте посмотрим на это в более широком контексте. Мы упоминали уже, что некоторые крупные игроки хотят максимально дистанцироваться от Биткойна, и потому с удовольствием делегируют как можно больше связанных с Биткойном действий своему пулу. Такие пулы широко открыты для регуляторного вмешательства, и большая часть их поставщиков хешрейта только рада этому.
С точки зрения самой сети Биткойна, это, опять же, вводит экономическую иррациональность , проявляющуюся в таком поведении, как добыча блоков, соответствующих определённым произвольным стандартам. До сих пор, когда подобные эпизоды случались, продолжались они недолго — из-за реакции сообщества и ввиду абсурдности самих попыток. Но сам факт появления таких примеров говорит о риске централизованного построения шаблонов блоков. Будут ли майнеры в одной юрисдикции пытаться запретить или отказать в обработке транзакций из какой-то другой юрисдикции? Станут ли майнеры просто продолжением регулятора или влиятельного недобросовестного игрока? Есть конкретные примеры того, как пулы снижали комиссию за транзакции, чтобы получить прибыль со стороны, иногда просто под давлением регуляторов. С точки зрения сети это опять же выглядит экономически нерационально.
Экстремальный пример из сравнительно недавних — комиссия в 19 BTC, уплаченная за транзакцию в блоке, который в конечном счёте был найден F2Pool, якобы по ошибке. Будучи FPPS-пулом, они получили на хранение комиссию за майнинг в размере 19 BTC и решили вернуть её тому, кто совершил такую ошибку. Это прекрасная иллюстрация цены размещения слишком большого посредника между вашим майнером и сетью Биткойна. В PPLNS-пуле вероятность такого развития событий была бы меньше — не потому, что PPLNS-пулы непременно являются «бездоверительными» или «некастодиальными», но в силу возможности отслеживать и проверять доход от комиссий прямо в момент поступления блока, пулу, вероятно, сложнее было бы провернуть нечто подобное, поскольку он, скорее всего, уже зачислил бы на внутренние счета майнеров их долю в награде за блок, и откат выплаты вызвал бы больший резонанс. Хотя принципиальной разницы не видно, пока вы не сравните, что было бы, если бы пул производил выплаты своим майнерам непосредственно в coinbase-транзакции. В этом случае деньги уже находились бы в распоряжении майнера, а перехват пулом доходов от награды за блок был бы невозможен. Таким образом, в этом примере желание пула представить себя щедрым или справедливым стоило майнерам $500 000 дохода от комиссий, когда пул принял за них решение, которое не должен был принимать.
Следующая проблема: атака 51% и другие атаки
К сегодняшнему дню, должно быть, все, включая вашу маму, представляют себе, что такое атака 51%. Однако гораздо меньше понимают, что (если только сеть не прибегнет к принудительному способу обхода) 51% — это пороговое значение для того, чтобы такая атака имела гарантированный и постоянный успех, а не просто разрушительной.
В действительности любой субъект, контролирующий более чем 20% сети, может вызвать проблемы с помощью множества атак, некоторые из которых реально осуществляются и лишь изредка становятся предметом обсуждения, о чём я ещё расскажу позже. Но прежде чем мы к этому перейдём, мы можем с ужасом посмотреть на сеть, в которой есть всего два субъекта с суммарным хешрейтом, достоверно превышающим 51%. Хуже того, один из крупнейших пулов не особенно-то и скрывает, что он отвечает за ещё 10% блоков, найденных через другой крупный пул, с которым материнская компания поддерживает стратегическое партнёрство. Такая пантомима никак не внушает ни доверия, ни уверенности.
На это есть два обычных ответа. Во-первых, люди указывают на то, что хешеры могут запросто проголосовать ногами и сменить пул, если тот решит поучаствовать в атаке 51%. Во-вторых, поступать так для пула было бы безумием по той простой причине, что нарушение работы Биткойна приведёт к падению его цены, а этого никто из тех, кто инвестирует в экосистему, никогда не захочет.
Второй аргумент игнорирует историю человечества и предполагает, что людей нельзя принудить к деструктивному поведению и тем самым вызвать сбой просто ради сбоя или из других гнусных целей. (Не учитывает он и того факта, что рынок вовсе не всегда является хорошим индикатором наличия или отсутствия проблем с Биткойном, см. войны форков 2017 года).
Однако первый аргумент основан на, казалось бы, более надёжном предположении, что хешеры всегда будут переключаться, если один пул становится слишком большим. Действительно, если бы пулы попытались злоупотребить своим положением, то столкнулись бы с реальным положением вещей, в которой, несмотря на создание 99% шаблонов блоков, пулы на самом деле не являются майнерами. Есть также пример Ghash.io, схлопнувшегося после того, как напугать всех, превысив 40%.
Отлично, мы показали, что на самом деле это не проблема, и можно рассчитывать на то, что хешеры просто перейдут на другой пул. (В действительности, если крупные майнинговые предприятия связаны бюрократическими проволочками, такое предположение выглядит гораздо менее надёжным, но давайте остановимся хотя бы на том, что такая атака маловероятна).
К сожалению, осознание того, что хешрейт будет уходить от любого пула, превышающего какой-то пугающий порог, приводит к тому, что пулы начинают саморегулироваться — но не так, чтобы это было полезно сети, потому что им ведь не нужно реально поддерживать хешрейт ниже порога — нужно только создать такую видимость. По сути это равносильно тому, чтобы принять всю хеш-мощность, которую они могут получить, и передавать её другим пулам по мере необходимости, чтобы не пугать мир демонстрацией своей способности сеять хаос.
Это оставляет нас с непрозрачной и заведомо некорректной картиной сети. 30% блоков могут быть открыто найдены крупнейшим пулом, и это будет приемлемо для всех, в то время как ещё 10% общего хешрейта сети по-прежнему направлены в этот пул и тайно перенаправляются в один или несколько меньших партнёрских пулов. Хешеры, ответственные за эти 10%, едва ли поймут, что они используются таким образом (и при использовании StratumV2 обнаружить это ещё сложнее — подробнее об этом позже).
Этот и без того посредственный сценарий выглядит ещё хуже, если принять во внимание тот факт, что этот перенаправленный хешрейт можно использовать для нанесения ущерба меньшим пулам посредством атаки утаиванием блока.
Это происходит следующим образом: злоумышленник участвует в майнинге как обычный пользователь пула-жертвы, и как результат, получает свою долю от награды за любой блок, который пул находит. Вознаграждение в конечном итоге достаётся злоумышленнику, который затем может заплатить реальному хешеру, не теряя при этом никаких денег. Пока что единственный причинённый ущерб — это занижение представления о хешрейте пула, однако меньший пул остаётся невредимым.
Ущерб возникает, если атакующий решает не сообщать пулу-жертве о нахождении блока. Это выставляет пул-жертву в невыгодном свете: создаётся впечатление, что они находят меньше блоков, чем должны были бы, и разделяют вознаграждение между большим количеством участников, чем на самом деле честно майнят, то есть неизбежно работают в убыток, если только не компенсируют потери каким-то другим способом.
Если FPPS-пул подвергся такой атаке, он должен сжигать доход, чтобы компенсировать разницу, платя майнерам из своего кармана. Если это PPLNS-пул, то его майнеры удивляются, почему они не получают причитающегося вознаграждения. И в любом случае утаивание блоков является антиконкурентной практикой, способной уничтожить пул-жертву, испортив ему репутацию.
С точки зрения атакующего пула, допустим, что они составляют 5% от хешрейта пула-жертвы. Это означает, что пул-жертва по-прежнему получает 95% ожидаемого дохода и выглядит на 5% менее удачливым, чем ожидалось. Этого вполне достаточно, чтобы уничтожить пул, в то время как для более крупного пула потеря 5% от перенаправленного хешрейта будет иметь гораздо меньшее значение. Скажем, если он составляет всего 1% от общей хеш-мощности пула, то атакующий теряет лишь 5% от 1% ожидаемого вознаграждения — 0,05 %. Это явное и лёгкое преимущество для любого крупного майнингового пула, а единственное условие — это готовность действовать неэтично.
Чем меньше пул, тем более он уязвим для такой атаки. Чем пул крупнее, тем с большей вероятностью он вытеснит конкурирующий меньший пул. Этот риск возрастает по мере приближения крупных пулов к тому уровню, когда их общий хешрейт начинает пугать сообщество, что ещё больше мотивирует их по меньшей мере просто перенаправлять хешрейт в меньшие пулы, даже если не атаковать их или делать это достаточно редко, чтобы проблемы в конечном счёте были сведены на нет и списаны на дисперсию. И действительно, заметное снижение дисперсии доходов уже наблюдается в крупных пулах благодаря более стабильным выплатам от сети, что означает возможность работать с меньшей маржой и, следовательно, брать с хешеров меньше. С точки зрения любого майнера/пула, который не подвергается атаке, эта атака означает выгоду от снижения сложности, поскольку сеть Биткойна приспосабливается к тому, что блоков в целом стало меньше.
Является ли угроза атаки утаиванием блоков чисто теоретической? Абсолютно нет. Несколько майнинговых пулов были атакованы именно таким образом ещё в 2015 году. Противостоять этому крайне сложно, поскольку пул должен проанализировать всех контрибьюторов и принять взвешенное решение об исключении их из пула и/или отказе от выплат, если им настолько сильно не повезёт (статистически почти невозможно), что пул сможет обоснованно предположить, что они действуют злонамеренно. Такого рода атаки также стимулируют пулы к идентификации хешеров и использованию кастодиальных платежей, что дополнительно усложняет жизнь тем, кто хочет майнить свободно и без ограничений, как это и задумывалось изначально.
Как бы там ни было, общий эффект от всего этого заключается в том, что люди будут предпочитать майнинг с крупными пулами ещё по одной причине. Мы уже видели заявления крупных майнеров о том, что они уходят из небольших пулов из-за того, что получают выплаты ниже ожидаемых.
Это крайне нежелательный эффект, поскольку крупные пулы и использующие их крупные хешеры гораздо в большей мере подвержены регулированию и, следовательно, склонны к поведению, наносящему ущерб Биткойну, не ограничиваясь даже централизацией шаблонов блоков и временным кастодиальным хранением всех добытых биткойнов.
Пулы становятся на позицию непрошенных и нежелательных представителей, навязывающих лишние бюрократические практики «от имени» своих хешеров. Два крупнейших пула уже требуют от своих пользователей пройти через тонну бюрократических препятствий, включая идентификацию личности, которые не должны быть необходимыми для майнинга Биткойна.
И последнее замечание по поводу утаивания блоков. Помимо того, что оно угрожает усложнить жизнь небольшим пулам и всем желающим майнить с их помощью, я хочу сказать всем, кто всё ещё склонен отмахиваться от этой проблемы как чисто теоретической (даже несмотря на известные случаи таких атак в прошлом): выглядит ли для вас нормальным и органичным, что пулы сохраняют постоянный размер аккурат на верхней границе психологически приемлемого для сообщества? Это подразумевает, что новый хешрейт, поступающий в сеть, всегда каким-то образом умудряется распределяться хотя бы в некоторой степени равномерно. Нам предлагается поверить, что пул может возникнуть, расти огромными темпами… а потом просто прекратить расти примерно у того порога, когда размер пула начнёт напрягать комьюнити. Видели ли вы пулы, ограничивающие создание новых аккаунтов и отключающие хешеров, превышающих допустимый хешрейт на существующих аккаунтах? (Нет, не видели.)
Более вероятны два сценария: либо хешеры коллективно саморегулируются (что маловероятно, поскольку майнинг в меньших пулах на сегодня, как известно, означает меньшую доходность, даже если описанные здесь причины не вполне объясняют, почему, не говоря уже о том, что примеры массового исхода из пула были очень заметны в те несколько раз, когда они действительно случались), либо пулы просто искажают данные о своём хешрейте.
Ко всему прочему, у небольших пулов есть ещё одна проблема: они могут сутками не находить ни одного блока, тогда как у более крупного пула пауза без блоков не продлится и нескольких часов. Это вопрос разрешения: чем выше ваш хешрейт, тем ближе вы к ожидаемым значениям в краткосрочной перспективе, и это, к сожалению, приводит к минимальному порогу, ниже которого пул не может рассчитывать на компенсацию за периоды неудач, и в этот момент становится просто невозможно конкурировать.
Двухнедельные эпохи сложности означают, что за этот двухнедельный период должно быть найдено разумное количество блоков, чтобы невезение атакуемого пула имело шанс быть уравновешенным последующей удачной полосой. В противном случае, если, например, пул прогнозирует частоту блоков раз в 13 дней и не находит ни одного блока до того, как сложность изменится в сторону увеличения, что приведёт к снижению до прогноза 1 раз в каждые 15 дней, это предыдущее окно закрывается навсегда. Если это PPLNS-пул, то хешеры заработали меньше, чем могли бы. Если FPPS, то пул сжёг много денег и/или обанкротился.
Это означает, что пулов существует лишь столько, сколько может существовать, по крайней мере способных работать так, как современные пулы. Их просто не может быть сотни, потому что многие из них будут постоянно терпеть крах в неудачные периоды из-за того, что имеют менее 1% хешрейта сети и потому потенциально не могут надёжно рассчитывать даже на один блок в сутки, потенциально сталкиваясь с периодами в несколько недель без найденных блоков. Это ограничение, накладываемое самим Биткойном.
Коммуникация между майнерами и пулами
Протокол коммуникации между майнерами и пулами — это Stratum (медленно, но верно вытесняемый Stratum V2). Stratum V1 — протокол насколько древний, настолько же глубоко несовершенный. Во-первых, все коммуникации происходят в формате открытого текста. Это означает, что те же интернет-провайдеры знают не только о том, что вы занимаетесь майнингом, но и о том, в каких масштабах, и могут проводить MITM-атаки (равно как и все остальные, кто может прослушивать трафик в вашей сети), в результате которых вы будете использовать свои машины и мощности от чужого имени в пользу злоумышленника. Этим уже злоупотребляли неизвестные злоумышленники, перехватывая хешрейт у целевых пулов.
Помимо ряда недостатков, StratumV1 также не предлагает майнерам практического способа создавать собственные шаблоны блоков при майнинге в составе пула. Все эти проблемы решены в чрезвычайно привлекательном обновлении StratumV2, к которому мы ещё вернёмся позже.
Аппаратное и программное обеспечение
Прежде чем переходить к решениям, давайте отвлечёмся немного от обсуждения динамики пулов и майнеров, поскольку эта статья была бы неполной без упоминания того факта, что существует только две компании, производящие ASIC в сколько-нибудь значимых масштабах: Bitmain и MicroBT. Есть и другие производители, но в действительности практически всё хеширование происходит на машинах, произведённых этими двумя компаниями.
Это не очень хорошо по очевидным причинам и связано, по сути, с тем просто, что производство чипов чрезвычайно сложно и потому гиперцентрализовано.
Рассмотрение решений этой проблемы выходит далеко за рамки этой статьи, однако есть люди, работающие над тем, чтобы сделать домашний майнинг чем-то более практичным. Общая идея для всех, кто работает над этими проектами, состоит в том, что если это будет под силу достаточному числу обычных биткойнеров, то они начнут составлять существенный процент от общего хешрейта сети, что предпочтительнее, чем большинство крупных майнинговых предприятий, чрезвычайно подверженных вмешательству регуляторов.
Эта задача значительно усложняется тем, что прошивка оборудования имеет закрытый исходный код. Даже пользовательские прошивки, которые могут «взломать» ASIC, как правило, имеют закрытый исходный код, чтобы пользователи платили разработчикам.
Стоковая прошивка для ASIC — в частности для Bitmain — отличный показатель того, насколько комфортно они чувствуют себя в условиях доминирования на рынке. Помимо того, что она имеет закрытый исходный код, она явно вредоносна. При включении Antminer вы по умолчанию майните от их имени, хотя майнер может, по крайней мере, это предотвратить, заблокировав соединение (либо установив альтернативную прошивку, но тогда вы платите разработчикам прошивки, и её уже нельзя заблокировать без того, чтобы майнер не отказался майнить вообще). Bitmain также неоднократно ловили на умышленном добавлении бэкдоров в прошивку для своих майнеров (см. Antbleed), и она активно работает над блокировкой разработчиков альтернативных прошивок.
Тот факт, что стоковая прошивка это делает, уже откровенно возмутителен и явно подчёркивает крайнюю необходимость конкуренции в производстве ASIC.
Кто-то мог бы чувствовать себя комфортно, если бы правила сети обеспечивались биткойн-узлами с закрытым исходным кодом? Теперь представьте, что из-за этих узлов пользователи теряют свои BTC в пользу разработчиков этого закрытого ПО — и мы все знаем, что это не пустые страхи. Кто-нибудь согласится на такое? Однако когда речь идёт о майнинге, суверенитет его участников практически не принимается во внимание. Конечно, ПО узлов и прошивка ASIC — не одно и то же, и мы, конечно, уделяем больше внимания первому, как и должно быть, но и прошивка ASIC является существенным аспектом, которым на практике недопустимо пренебрегают.
С учётом всего вышесказанного, давайте теперь перейдём к некоторым возможным решениям, сосредоточившись, в частности, на расширении возможностей майнеров и совершенствовании существующих моделей.
P2Pool
Об этом решении мало что можно сказать, кроме того, что оно децентрализует практически все аспекты майнинга в составе пула. Хотя в небольших масштабах оно делает много полезных вещей, для этого требуется, чтобы каждый пользователь загружал, проверял и отслеживал доли каждого другого пользователя и доказывал друг другу, что они правильно учитывают всё в своих шаблонах. Достичь этого в состязательной среде любого масштаба — задача по сути невыполнимая. В силу фундаментальной природы майнинга в пулах для этого требуется гораздо больше ресурсов, чем для запуска полноценного узла Bitcoin, не говоря уже о том, что это усложняет работу майнера.
По этим причинам P2Pool игнорируется большинством майнеров и используется только технически подкованными пользователями или идеалистами, которые по понятным причинам не готовы допустить для себя майнинг с помощью альтернатив.
StratumV2
Это, безусловно, самое легкодоступное решение, предлагающее практические способы устранения многих проблем, упомянутых в этой статье.
Во-первых, благодаря шифрованной коммуникации между пулами и хешерами, провайдеры и любые другие сущности, имеющие доступ к вашему сетевому трафику, больше не будут тривиально, в формате открытого текста, осведомлены о том, что вы занимаетесь майнингом (и в каких масштабах). Следовательно, и атака типа man-in-the-middle с хешированием в пользу злоумышленника также становится невозможной или по крайней мере значительно сложнее.
Во-вторых, и это, пожалуй, самое важное, этот протокол позволяет хешерам создавать собственные шаблоны блоков, так что, хотя пулы по-прежнему будут распределять вознаграждения и, по-видимому, хранить награду за блоки, это тем не менее означает заметный перенос влияния от пулов к майнерам, что является однозначно положительным моментом.
Наконец, есть ещё несколько улучшений, с которыми интересующиеся могут ознакомиться здесь.
Мир, в котором StratumV2 является нормой — как и энтузиазм майнеров в отношении создания собственных шаблонов блоков (в идеале пулы будут стимулировать майнеров, которые берут это на себя), — позволит получить гораздо более устойчивый Биткойн.
В мире, в котором StratumV2 станет общепринятым стандартом, а майнеры будут активно создавать собственные шаблоны блоков (в идеале пулы будут предлагать стимулы для майнеров, берущих эту задачу на себя), Биткойн будет ещё гораздо более устойчивым.
В сущности, всё сообщество Биткойна заинтересовано в обновлении экосистемы майнинга до StratumV2, но исторически майнеры обычно избегали использовать новые решения из-за дополнительных усилий (хоть и незначительных по сравнению с p2pool) и отсутствия стимула к этому.
В итоге
Как со StratumV2, так и без него, майнинговая сеть Биткойна представляет огромный простор для совершенствования. Необходим пул, который предлагает майнерам возможность самостоятельного хранения своих монет при майнинге. Для этого нужно, чтобы пул (или его хешеры) создавал шаблоны блоков, в которых вознаграждение майнерам выплачивается непосредственно в coinbase-транзакции, содержащейся в каждом блоке. Тот факт, что это непрактично в рамках системы FPPS, означает, что любой пул, предложивший такой подход, столкнётся с нежеланием некоторых майнеров, но те, кто на него перейдёт, придут к большей прозрачности, получая выплаты — начиная с некоторого порога — непосредственно от из сети Биткойна, с легко проверяемым разделением субсидий на блок и комиссий.
Это может быть дополнено тем, что пулы (до перехода на StratumV2) должны по крайней мере информировать майнеров о шаблонах блоков, созданных от их имени, до того как блоки будут решены. А после внедрения StratumV2 достаточно будет проверять, что все майнеры создают шаблоны, которые точно отражают распределение награды за блок, без последствий для масштабирования, когда все майнеры должны делать это постоянно.
Пул также может преодолеть нежелание майнеров создавать собственные шаблоны блоков, предложив им стимулы — например, взимая с них меньшие комиссии. Если майнеры не захотят брать на себя эту задачу, даже когда это снова станет практически возможным, то может понадобиться такой дополнительный стимул.
Кажется, что эти предложения уже способны значительно улучшить ситуацию.
Свидетельства централизации биткойн-майнинга вокруг Bitmain
Многие годы ходят слухи о том, что крупнейший производитель майнинговых машин тайно сосредоточил в своих руках большую часть хеширующих мощностей Биткойна. И эта теория имеет под собой несколько большее основание, нежели простое наблюдение за логотипами на корпусах ASIC.
Скептики полагают, что не только произведённые Bitmain машины, но и принадлежащий компании майнинговый пул, Antpool тайно создаёт подавляющее большинство блоков в блокчейне Биткойна. Свидетельство в пользу этой теории исследователи нашли в шаблоне блока Antpool: вручную приоритизированная транзакция сразу после награды за блок в 6,25 BTC (coinbase-транзакции).
Новое исследование псевдонимного биткойн-разработчика 0xb10c, похоже, подтверждает давно ходившие слухи о сокрытии Antpool истинных масштабов своей деятельности за названиями нескольких якобы независимых пулов. Вкратце, 0xb10c предупреждает, что, несмотря на десятки тысяч децентрализованных узлов, Биткойн может быть на самом деле довольно сильно централизован с точки зрения майнинга.
Общие шаблон блоков и кастодиан для якобы независимых пулов
0xb10c обнаружил, что BTC.com Pool, Binance Pool, Poolin, EMCD, и Rawpool демонстрируют признаки использования метода Antpool для приоритизации транзакции, следующей за coinbase.
Antpool может также использовать шестой пул, Braiins, но на момент публикации исследования 0xb10c ещё не завершил анализ его деревьев хешей. Почти идентичные ветви могут указывать на то, что эти пять или шесть пулов часто используют для выбора транзакций для включения в блок точно тот же шаблон, что и Antpool.
Иными словами, все эти пулы часто используют машины Bitmain, часто собирают транзакции в соответствии с шаблоном блока Bitmain, часто отдают приоритет тем же вручную настраиваемым пост-coinbase транзакциям, что и Bitmain, и часто отправляют coinbase и комиссии за транзакции на ответственное хранение тому же кастодиану, что и Bitmain. Это, конечно, подразумевает существенно более высокий уровень централизации, нежели принято считать.
Bitmain тайно централизовала proof-of-work Биткойна?
Основанная в 2013 году, Bitmain является одной из старейших биткойн-компаний, существующих на рынке. Она также имеет поистине гигантский масштаб и шесть лет назад пыталась провести IPO на сумму более миллиарда долларов.
Каждый майнер знает, что машины Bitmain генерируют практически всю хеш-мощность в сети Биткойна. Но не все знают о размере принадлежащего Bitmain майнингового пула AntPool.
Согласно данным, заявленным самим мемпулом, Antpool генерирует лишь четверть хешрейта Биткойна, Однако 0xb10c подозревает, что он может тайно контролировать большую часть хешрейта сети.
Поскольку награда за майнинг зачисляется одному произвольному майнеру, угадавшему, как в лотерее, пороговое число сложности, похожее на выигрыш в лотерее, что происходит с интервалом около 10 минут, майнеры объединяются в пулы, чтобы разделить работу, повысить общий шанс на выигрыш награды за блок и разделить между участниками пула эти случайные выплаты пропорционально доле в общем хешрейте пула.
До апрельского халвинга размер субсидии на блок, выплачиваемой в coinbase-транзакции, составлял 6,25 BTC; с 20 апреля 2024 года это 3,125 BTC.
На сегодня всего три майнинговых пула контролируют большую часть хешрейта Биткойна. Однако новое исследование указывает на то, что Antpool, принадлежащий Bitmain, скрывал свою работу, отправляя свои валидные блоки от имени других пулов.
То, что Bitmain обладает практически монополией на физическое оборудование для майнинга Биткойна, общеизвестно. С большим отрывом самые распространённые майнинговые установки, выполняющие proof-of-work-хеширование по всему миру, — это машины Bitmain.
Несмотря на стабильно плохую работу с клиентами и непостоянство качества продукции, запатентованные технологии Bitmain в области производства ASIC обеспечили оборудованию компании практически повсеместное распространение.
Свидетельство в пользу предполагаемого доминирования Antpool
Mononaut нашёл дополнительные свидетельства, которые, похоже, подтверждают теорию 0xb10c о том, что Antpool может тайно использовать сторонние пулы, чтобы скрыть реальное доминирование Bitmain.
Mononaut проследил coinbase-вознаграждения от майнинговых пулов AntPool, F2Pool, Binance Pool, Braiins, BTCcom, SECPOOL, Poolin, ULTIMUSPOOL, 1THash и Luxor. Он обнаружил подозрительный уровень кооперации этих якобы конкурирующих структур в направлении coinbase общему — возможно, контролируемому Antpool — кастодиану.
0xb10c не смог подтвердить, что SECPOOL и SigmaPool полностью клонировали шаблон AntPool, хотя, похоже, что они использовали очень похожий шаблон. В целом, представляется чрезвычайно маловероятным, чтобы до девяти крупных майнинговых пулов использовали для хранения coinbase-вознаграждений одного общего кастодиана, если только за всеми их операциями не стоит одна организация.
В общем, это создаёт картину того, что Antpool, если и не контролирует более половины хешрейта Биткойна через сговор или прямой контроль над другими майнинговыми пулами, то, вероятно, очень близко к тому, и свидетельства, опубликованные 0xb10c и Mononaut, вновь поднимают перед нами вопросы о реальном уровне влияния Antpool и Bitmain на майнинг Биткойна. (Сам Antpool до сих пор никак не прокомментировал эти новые сведения.)
С точки зрения Bitmain, это было бы вполне осмысленно. Они производят, по сути, один продукт — майнинговые установки. Контроль над механизмом, посредством которого основная часть их клиентской базы «довольно хорошо координируется» между собой, был бы большим подспорьем в получении постоянной сверхприбыли.
На скриншоте выше показана 4-дневная история майнинга (с 13 по 17 мая) на сайте blockchain.info. Отфильтровав данные для упомянутых в исследовании пулов, мы получим следующую таблицу:
Пул | Процент | Количество | тыс. $ |
---|---|---|---|
AntPool | 24,868% | 141 | 9447 |
F2Pool | 8,642% | 49 | 3283 |
Binance Pool | 3,880% | 22 | 1474 |
Braiins Pool | 2,293% | 13 | 871 |
BTC.com | 1,058% | 6 | 402 |
Итого | 40,744% | 231 | 15.477 |
За 4 дня должно быть создано 576 блоков. 40,744% от 576 — это 235 блоков — довольно близкое значение. Упоминаются также некоторые пулы, которые не фигурируют в истории (SECPOOL, ULTIMUSPOOL, 1THash, EMCD, Luxor). Равно как в исследовании могут отсутствовать некоторые «хорошо скоординированные» пулы.
Итак, с этими данными мы приходим к тому, что Bitmain, вероятно, может контролировать значительно больше хеш-мощностей Биткойна, чем самый крупный майнинговый пул. Foundry USA контролирует 31,746%, а Bitmain вместе с подразумеваемыми партнёрами — 72,49% хеширующих мощностей, и при сегодняшней цене BTC пулы Bitmain добывают биткойнов на ~$4 млн в сутки.
Если так, стоит ли «простому пользователю» беспокоиться о том, что блокчейн Биткойна стал менее децентрализованным, чем представлялся всё это время? Едва ли: для Bitmain нет никакого смысла убивать гуся, несущего золотые яйца.
А тот факт, что монеты на 3, 6 и 7 местах в рейтинге CoinMarketCap даже не пытаются претендовать на децентрализацию, недвусмысленно намекает, насколько она в действительности важна для большинства «криптанов». На 3 и 7 строчках находятся стейблкойны с совокупной «рыночной капитализацией» $134 млрд; при этом крупнейший стейблкойн с претензией на децентрализацию, DAI, обретается на 24 месте с капитализацией $5 млрд.
Бой с воображаемым противником: оптимистический комментарий по поводу централизации proof-of-work
Для начала, давно ли вы видели график хешрейта? Он практически неотличим от «хоккейной клюшки» госдолга США. Благодаря развитию оборудования, публичным майнерам, акции которых торгуются на фондовом рынке США, и активному освоению дешёвых источников энергии, майнинг Биткойна превратился в гонку вооружений. С момента запрета майнинга в Китае в 2021 году хешрейт сети вырос более чем в пять раз.
Последствия этого для маржи майнеров очевидны: все вытесняют друг друга. На последнем медвежьем рынке было много консолидаций, особенно на «западном фронте». Причина, по которой они так быстро достигли такого уровня доминирования, хорошо знакома биткойнерам: волатильность. В этом контексте её ещё называют дисперсией, а кто-то назвал бы случайностью.
В описанных выше условиях случай может вывести вас в лидеры рынка или, напротив, стоить вам бизнеса. И это основная причина существования майнинговых пулов. Proof-of-work — это случайный процесс, а случайность — враг финансового потока. Объединяя свой хешрейт с другими, вы повышаете свои шансы и получаете несколько более предсказуемый поток доходов.
Это важно, потому что поставщику услуг, ежемесячно выставляющему счёт, нет дела до ваших сложностей. Чем меньше ваша маржа, тем вы уязвимее, и в сегодняшней конкурентной среде это вопрос выживания.
Какое отношение это всё имеет к Foundry? Оказывается, ещё один способ сгладить волатильность доходов майнеров — это изменить схему выплат в пуле, полностью исключив дисперсию из уравнения. Как? Просто выплачивать майнерам вознаграждение за работу независимо от того, как часто пул добывает блоки. Эта схема выплат называется FPPS, Full Pay Per Share.
Если вы успели подумать, что это звучит дорого, это потому, что так оно и есть. Пул фактически платит майнерам из своего кармана, рассчитывая, что в итоге сможет вернуть себе деньги за счёт добытых блоков. А если вы попали в полосу неудач и ваш баланс оказался недостаточно прочным для этого, то вы вылетели с рынка.
Благодаря сочетанию деловой хватки, своевременных решений и доступа к финансированию, Foundry обеспечили себе такое положение на рынке, что более мелким игрокам очень трудно войти на рынок и конкурировать с ними. Конечно, на практике всё немного сложнее, но суть примерно такова.
Вернёмся теперь к нашей группе майнинговых пулов и таинственному кастодиану, одному на всех. Вы уже уловили идею? Та же самая игра происходит и по другую сторону пула.
Вполне вероятно, что закрепление Foundry в качестве крупного игрока усугубило динамику, описанную выше, вынудив мелкие пулы капитулировать. Исполнение выглядит несколько иначе, но по сути это та же модель. Мы можем подтвердить, что несколько пулов теперь используют одни и те же шаблоны блоков, и это совпадает с сообщениями о том, что Antpool предлагает услугу white label (производство немаркированных продуктов или услуг одной компанией и использование таких продуктов или услуг другой компанией под своим брендом).
Именно так: судя по всему, мы имеем дело с прокси-майнингом как бизнес-моделью. Кроме того, агрегирование coinbase-выходов позволяет предположить, что, по-видимому, ещё больший процент хешрейта финансирует свои операции через одного провайдера. Иначе говоря, один субъект выписывает чеки на почти половину хешрейта сети.
Но если так, это ведь может быть опасно?
Как можно было ожидать, эта ситуация побудила некоторые «говорящие головы» задаться тревожными вопросами о централизации майнинга. Для контекста и справедливости ради, это не первый случай подобной консолидации майнинга Биткойна.
Похоже, что без подобной волны FUD(а) насчёт централизации майнинговой сети не обходится ни один рыночный цикл биткойна; это сезонное явление.
«Смотрите, так быть не должно! Полагаю, мы все согласны, что когда значительная часть хешрейта находится во власти горстки банкиров — это очень плохо для сети. Безопасность Биткойна зависит от майнеров, следующих собственным финансовым стимулам. Но если в результате мы получаем такую централизацию майнинга, значит, что-то не так: это ставит под угрозу устойчивость к цензуре и само существование сети».
Однако такая реакция необоснована. На протяжении всей истории в майнинге Биткойна можно наблюдать заметные тенденции роста и укрупнения, и сегодняшняя ситуация находится полностью в том же тренде. Это рынок, движимый экономикой, а не кодом. Неэффективность возникает на каждом этапе, и впоследствии она сглаживается развитием отрасли.
Я понимаю, что для человека с клавиатурой всё является багом, но реальность не вписывается в эти рамки.
Все, кто в курсе, приветствуют работу, которая была проделана в StratumV2 для оптимизации интерфейса майнинга, но это просто не выход из нынешнего положения. Шаблоны транзакций, даже если они могут быть пользовательскими, всё равно означают ограничение доступа: пулы всегда могут отклонить любую транзакцию, которую сочтут недостаточно «правоверной». Свысока смотреть на операторов пулов за то, что они не проявляют интереса к решению этой проблемы, и на майнеров за то, что они его не требуют, граничит с высокомерием.
На индивидуальный отбор транзакций нельзя положиться в плане противодействия цензуре. Реально решить эту проблему могут только рыночные механизмы, и так уж получилось, что Биткойн явно спроектирован таким образом, чтобы быть устойчивым к майнинговому большинству. Посредством комиссий пользователи создают финансовый стимул для конкурирующих майнеров набрать достаточное количество хешрейта для того, чтобы транзакция была добыта. И в идеальном мире это подразумевает, что каждый майнер должен работать, в сущности, по одному и тому же шаблону — наиболее прибыльному.
На практике же дело обстоит несколько более, скажем так… странно (а для кого-то и тревожно). Как бы неприятно это ни было, попытки цензуры неизбежны, и недавняя история с активизмом некоторых майнеров против ординалов — лишь один из наиболее безобидных тому примеров.
Безусловно, самым разочаровывающим аспектом этой агитации является поддержка изменения алгоритма proof-of-work. Угроза, исходящая от государства в данный момент, делает риторику об исключении майнеров особенно удручающей. Это полное отсутствие понимания стоящих перед нами задач. «Разделяй и властвуй» — недостаточно надёжный принцип для вас?
Хуже того, мы знаем, что выплёскивать вместе с водой младенца — это рецепт катастрофы. Изменение алгоритма, исключение майнеров — это ничего не даёт. Но, опять же, технократический ум слеп к любым проблемам, не разрешённым в пулл-реквестах.
Пойдя по пути выжженной земли, вы гарантируете, что в вашей игре будут участвовать только самые капитализированные участники. Хешрейт можно стереть с лица земли одним нажатием клавиши, но передовое оборудование и достаточно большие запасы капитала могут пережить ядерную зиму. Рынок производителей ASIC, скорее всего, вернётся к одному игроку, который уже специализируется на пользовательских алгоритмах. Ничто не играет так на руку монополиям, как старый добрый интервенционизм, чтобы помочь уничтожить конкурентов. С точки зрения консенсуса, эта идея настолько абсурдна, что противоречит всем предпосылкам системы.
Если Биткойн требует социальной координации для того, чтобы подавлять капризы рынка и изменять его стимулы, то это неудачный проект. Proof-of-work — это экономическая конструкция, а не техническая штуковина, которую можно починить с помощью кода.
Что же нам тогда делать?
Сидеть сложа руки и ждать, когда ситуация станет ещё хуже?
Что ж, я могу лишь скромно предложить рассматривать динамику рынка с помощью рыночных решений. Диверсификация – вот ответ.
Насколько я понимаю, основная проблема связана с рынками капитала Биткойна. Игроки с большими ресурсами, быстро сообразившие, с какой проблемой сталкиваются небольшие майнинговые компании, заполнили дыру на рынке и пока не оставили места для других участников. Экономия на масштабе и предполагаемые риски, связанные с майнингом, способствовали сдерживанию конкурентов.
У горстки амбициозных игроков есть возможность привнести баланс на этот рынок и позволить пулам получать капитал, не преклоняя колено перед более крупными конкурентами. Это не произойдёт в одночасье. Необходимо выстроить отношения и устранить общую информационную асимметрию, от которой страдает этот рынок.
Именно поэтому мы должны прекратить попытки сжечь мосты. Конечно, можно внести технические усовершенствования, чтобы смягчить основные проблемы дисперсии, но это не избавит незрелый рынок от болезней роста.
Биткойн во всех отношениях переживает период сродни подростковому. Ни один подросток не захочет, чтобы ему указывали, что делать, и навязывание какого-то одного пути неизбежно приведёт к сопротивлению. Конечно, в действиях некоторых участников при этом может не просматриваться какой-либо логики или причины, но не стоит решать за них. Это тоже пройдёт.
Минимально необходимый резервный фонд для майнингового пула: модель BitMEX Research
Итак, у нас есть новые свидетельства, подтверждающие опасную децентрализацию майнинга Биткойна: одна организация контролирует coinbase-выходы, для ~47 % хешрейта сети. И есть менее алармистское и, можно сказать, добродушное даже объяснение такой централизации: майнеры хотят нивелировать резкие перепады в своих доходах, и потому организации с большим капиталом берут риск таких колебаний на себя. Биткойн-аналитик Алекс Бержерон в своей статье для Bitcoin Magazine упоминает о «кубышке размером с Digital Currency Group» Барри Силберта.
BitMex Research в своём недавнем материале решили рассчитать, какой капитал в действительности необходим для обеспечения такого сглаживания доходов, и пришли к выводу, что, по-видимому, может быть достаточно резервного фонда размером в $20 млн, то есть ещё относительно немного. А значит, при всей яркости проявления на сегодняшний день, проблема сглаживания дисперсии не представляется такой уж долгосрочной фундаментальной проблемой стимулов, как можно было бы подумать.
Ценность сокращения дисперсии
В финансах риск имеет цену. Что бы вы предпочли: 100 долларов или 50% шанс на 200 долларов плюс 50% шанс на 0 долларов? Рациональный с финансовой точки зрения ответ — конечно, $100, потому что это меньший риск, даже при одинаковой ожидаемой ценности каждого выбора. Именно поэтому майнеры стремятся сокращать дисперсию в своих доходах.
Вычислить точную выгоду от этого меньшего риска крайне сложно. Насколько больше стоит $100 в сравнении с 50% вероятностью получить $200? Это непросто посчитать, к тому же это может быть связано с самыми разнообразными комбинациями личных предпочтений и финансовых обстоятельств компании, а также зависеть от премии за риск в более широкой экономике. Существуют финансовые теории, которые пытаются решить эту проблему — как, например, модель ценообразования капитальных активов, но применить такую теорию к майнингу Биткойна будет непросто. Поэтому, хотя мы знаем, что майнеры выигрывают от снижения дисперсии доходов, вычисление точного размера этой выгоды с помощью надёжной статистической модели в наши задачи не входит.
Однако, хоть это и трудно доказательно обосновать, можно с уверенностью предположить, что максимальная величина выгоды майнеров от полного устранения дисперсии довольно мала по сравнению с размером общего дохода от майнинга. Значит, для майнера, достигающего 5% от общего хешрейта сети, влияние дисперсии будет несколько ограниченным.
Майнинговые пулы
Конечно, есть майнинговые пулы, ровно для того и созданные, чтобы уменьшать дисперсию доходов и приносить пользу майнерам. Однако ни один майнинговый пул не занимает 100% рынка, поэтому даже самые крупные из них всё равно сталкиваются с проблемой дисперсии. В аргументе Алекса Бержерона выше упоминалось о том, что некоторые из крупных пулов, очевидно, могут полностью снижать остающийся риск дисперсии доходов в качестве услуги для своих майнеров за счёт собственных балансов. Для этого нужно обладать большими балансами, но насколько большими?
Насколько большой баланс нужен для исключения дисперсии доходов от майнинга
При прочтении аргумента о полном исключении дисперсии майнинговым пулом за счёт своего капитала как услуге для участников пула, одной из моих первых мыслей было то, что в целом это так, но теоретически реальный размер необходимого для этого капитала относительно невелик, а значит, это не является фундаментальной причиной монополизации отрасли в той степени, в какой можно было бы подумать.
Первоначально навскидку мы предположили, что это значение, вероятно, может составить менее $10 млн, что не такие уж большие деньги в масштабах майнинговой индустрии или по сравнению с чистыми денежными и биткойн-балансами многих майнеров, которые к тому же обычно довольно легко привлекают крупные суммы капитала. Поэтому мы предположили, что, по-видимому, дисперсия доходов не является фундаментальной долгосрочной экономической проблемой для майнинга Биткойна, и вместо этого проблема централизации майнинга проявляется из-за других факторов. Как уже сказано выше, мы не будем пытаться вычислить точную выгоду для майнеров от более низкой дисперсии доходов, но мы можем рассчитать примерную стоимость сглаживания этой дисперсии как услуги для пулов.
Допущения модели
Рассмотрим базовый сценарий. Допустим, мы запускаем новый пул для майнинга Биткойна и предлагаем участникам полное устранение дисперсии доходов за счёт «резервного фонда», финансируемого из нашего начального капитала. Сделаем следующие допущения:
- При запуске пула наша доля общего хешрейта сразу же достигает определённого процента и остаётся на этом уровне (в своих расчётах мы используем 5% и 50%).
- Как только резервный фонд исчерпывается, хешрейт пула падает до нуля и остаётся на нулевом уровне неограниченно долго.
- Пул взимает комиссию в размере 1%, которая делится 50:50 между резервным фондом и операционными расходами пула.
- Пул производит выплаты майнерам ежедневно.
- Комиссии за транзакции равны нулю.
- Никто не атакует пул.
- Не возникает проблем с точной оценкой хешрейта сети или хешрейта пула.
Итак, насколько велик должен быть первоначальный капитал в резервном фонде нашего пула?
Мы использовали несколько довольно простых математических моделей, чтобы определить вероятность истощения резервного фонда до нуля при определённых сценариях. И мы использовали генератор случайных чисел, чтобы определить, добывал ли наш пул каждый блок в течение гипотетического периода в один год. Если доля пула в общем хешрейте сети составляла 5%, то вероятность найти следующий блок равнялась 5%; если пул имел 50% хешрейта, то вероятность найти следующий блок равнялась 50%. Генератор случайных чисел определяет, добыл пул следующий блок или нет; это двоичный вывод: 1 или 0. После каждого дня (период в 144 блока) мы смотрели на накопленное значение резервного фонда. Если фонд сокращался до нуля или меньше, модель завершалась — пул закрывался.
Само собой, это очень упрощённая модель, которую следует рассматривать как быстрый ориентировочный расчёт.
В таблице ниже показано, как работает такая базовая модель на ежедневной основе, если мы исходим из того, что наш пул имеет 50% от общего хешрейта. Мы рассчитываем добывать в среднем 72 блока в день и ежедневно выплачивать майнерам вознаграждение исходя из этого среднего показателя. Генератор случайных чисел определяет, сколько блоков пул «реально находит», что приводит к прибыли либо убытку для нашего резервного фонда каждый день. Этот расчёт мы повторяем для периода в 365 дней, чтобы смоделировать результат за один год. Мы провели 400 таких циклов моделирования, чтобы получить ожидаемые результаты. Ниже показаны результаты первых 10 дней одного из испытаний с начальным капиталом в 200 BTC.
На гистограмме ниже показаны результаты одного из испытаний. Как и ожидалось, количество найденных за день блоков имеет приблизительно нормальное распределение.
На графике ниже показана динамика активов резервного фонда в течение года для одного из запусков модели. Начальный капитал фонда — 200 BTC. Исходя из наших допущений, при 50% доле в хешрейте сети фонд, скорее всего, будет накапливать капитал за счёт взимаемой пулом комиссии, однако истощение по-прежнему не полностью исключено.
Результаты моделирования
Результаты 400 испытаний представлены в таблице ниже для двух вариантов доли в хешрейте сети — 5 и 50 %. Согласно нашей модели, если пул получит 5% хешрейта сети, то начальный резервный фонд в 300 BTC даёт 97,8% вероятность проработать год без истощения фонда до нуля. С другой стороны, при 50% от хешрейта сети, начальный резервный фонд в 400 BTC даёт 95,0% вероятность продержаться год. Таким образом, исходя из текущей цены BTC наша первоначальная оценка в $10 млн была несколько занижена, но $20 млн кажется потенциально достаточным капиталом. Хотя, пожалуй, хотелось бы иметь несколько больший буфер, и $40 млн могли бы стать неплохим стартовым значением для размера резервного фонда. Можно повторить это упражнение и для большего числа уровней хешрейта и построить линейный график на основе 95-процентного порога выживаемости, но этим упражнением мы, пожалуй, займёмся уже в другой раз.
Начальный размер фонда (BTC) | 5% хешрейта сети | 50% хешрейта сети |
---|---|---|
10 | 11,0% | 14,3% |
100 | 59,8% | 56,5% |
200 | 88,5% | 79,5% |
300 | 97,8% | 89,3% |
400 | 99,5% | 95,0% |
500 | 100,0% | 98,0% |
Мы также построили гистограммы на основе максимальных суммарных убытков резервного фонда в каждом из 400 испытаний. По оси Y отражено количество раз, когда результат попадал в каждый бакет, а по оси X — бакеты для значений максимального суммарного убытка в BTC.
Предложение нового майнингового пула
Можно даже принять описанную выше модель в качестве бизнес-модели. Новый майнинг-пул может собрать $2 млн на финансирование технического развития и ещё $20 млн на первоначальный капитал для резервного фонда. Таким образом, общая сумма финансирования составит $22 млн. Хоть это и не тривиальная сумма, учитывая сравнительный размер майнинговой индустрии, вероятно, она гораздо меньше типичного для криптоиндустрии резервного фонда. Например, такие майнеры, как Marathon, Cleanspark, Riot, Cipher Mining, Hut 8 или Hive, имеют на балансе более $100 млн в BTC — гораздо больше $20 млн, необходимых для сглаживания дисперсии доходов.
Можно даже выделить резервный фонд в отдельный инвестиционный финансовый продукт. Инвесторы могли бы приобретать акции фонда, как если бы это был открытый инвестиционный фонд. Акционеры получали бы 50% дохода от комиссий майнингового пула, но при этом испытывали бы волатильность (и риск полного истощения), связанную с удачливостью пула. Хотя тот факт, что мы говорим о финансовом продукте, само по себе не очень хороший знак: финансовые продукты и услуги часто имеют тенденцию к централизации, и услуга сглаживания дисперсии доходов от майнинга тоже имеет схожие характеристики.
Атака утаиванием блока
Прозрачная структура открытого фонда, описанная выше, может не сработать. Любой майнинговый пул может быть атакован с помощью так называемой «атаки утаиванием блока» (Block Withholding Attack). Майнеры могут атаковать пул, отправляя только частичные доказательства, и если майнер действительно находит блок с требуемой сложностью, он может сохранить это в тайне. Конкурирующий пул вполне может провести такую атаку на пул с прозрачным «резервным фондом», и он будет точно знать, когда атаковать и когда атакуемый пул отключится. Поэтому в описанной выше модели общий объём активов в резервном фонде должен быть засекречен.
Итог
Похоже, что майнинговая сеть Биткойна действительно находится в довольно неблагоприятном и централизованном состоянии, где практически 50% от общего хешрейта сети хранят BTC из coinbase-выходов у одного кастодиана. И да, непосредственной причиной этого может быть желание майнеров сгладить перепады в доходах. Очевидно, что это реальная проблема: хотя требуемый размер стабилизационного фонда действительно увеличивается с ростом пула, здесь явно имеет место значительная экономия на масштабе. Например, в наших простых моделях с пулами на 5% и 50% от общего хешрейта сети пул на 50% в 10 раз больше, но при этом ему требуется всего в ~2 раза больший стабилизационный фонд, чтобы обеспечить такую же вероятность полного его истощения.
Важно, что фактор, рассмотренный в этой части, непосредственно централизует только владение coinbase-выходами, ничего не говоря о децентрализации оборудования и непосредственно майнинга. Однако и централизация владения coinbase-выходами — тоже очень плохая новость.
Хорошая же новость состоит в том, что уровень капитала, необходимый оператору пула для сглаживания перепадов в доходности майнинга, по-видимому, не так уж велик: от 20 до 40 миллионов долларов. Поэтому, хотя проблема существует, она не выглядит критической.
В частности поэтому мы не склонны согласиться, что проблема перепадов в доходах от майнинга является единственной фундаментальной и долгосрочной причиной довольно очевидной монополизации майнинговой сети. Как минимум, ещё одна важная причина столь тревожного уровня централизации состоит, по-видимому, в том, что большинство представителей майнинговой индустрии попросту не обращают внимания на этот аспект, поскольку обратное подразумевало бы регулярное усилие, а непосредственного стимула для такого усилия майнеры не ощущают.
В заключение
Итак, при рассмотрении различных аспектов децентрализации сети Биткойна явно выделяются две критически важные подсистемы в силу их значимости и текущей ограниченной децентрализации: подсистема майнинга/хешрейта сети и подсистема разработки. И если вокруг первой из них дискуссии ведутся с самого момента появления Биткойна — с обсуждением потенциальных атак 51% и способов противодействия им, — то подсистема разработки часто упускается из виду или недооценивается аналитиками. Несмотря на исторически честное и прозрачное поведение ключевых разработчиков Биткойна, чьи намерения неизменно были направлены на подлинный успех технологии, это не гарантирует такого же поведения в будущем.
Скромное число разработчиков Bitcoin Core в сочетании с непропорционально большим вкладом в код со стороны нескольких избранных из них создаёт риски проникновения, взлома и социальных манипуляций, недооценивать которые не следует.
Недостаточное количество разработчиков для обеспечения защищённого от атак уровня децентрализации может быть обусловлено ограниченностью их признания в сообществе и финансовых стимулов. Если финансовый стимул для майнеров конструктивно и добросовестно участвовать в работе сети определён самим протоколом, то для программистов, работающих над ключевыми клиентами, подобного заранее определённого беспристрастного или пропорционального вознаграждения не предусмотрено. Те из них, кто не обогатился за счёт роста биткойна в первые годы его существования, либо действуют из бескорыстного альтруизма, либо вынуждены полагаться на гранты, стипендии и пожертвования единичных организаций.
В настоящее время основные субсидии разработчикам Bitcoin Core поступают от компаний, работающих в биткойн-экономике, таких как OpenSats, Spiral, Square Crypto, Chaincode, MIT DCI, Blockstream, Gemini, Coinbase, BitMEX, Hardcore Fund и др. Их вклад крайне важен, однако не обязательно нейтрален или не предусматривает собственных эгоистичных интересов. Само по себе это может быть и не плохо, но что произойдёт, если на их место придут доброжелательные доноры, чьи интересы, скорее всего, уже не будут совпадать с успехом Биткойна?
Это вызывает опасения по поводу потенциального вмешательства со стороны менее доброжелательных доноров, что может поставить под угрозу безопасность и стабильность всей сети. Ограниченное признание и финансовые стимулы, отсутствие гарантий и потенциально вероятные регуляторные риски делают роль разработчиков Bitcoin Core непривлекательной для большинства программистов, повышая уязвимость этой подсистемы перед коррупционными или манипулятивными действиями.
Решение этой проблемы могло бы подразумевать создание специальных краудфандинговых платформ исключительно для сбора ограниченных невозвратных пожертвований от доноров, чтобы избежать дисбаланса и чрезмерного влияния со стороны нескольких человек. Либо это могло бы быть многостороннее соглашение — необязательное, но технически обязывающее для подписантов, — между крупными игроками в экосистеме Биткойна (майнерами, ETF, биржами и пр.), в котором они обязуются перечислять заранее определённую долю своих доходов разработчикам Bitcoin Core, подвергая себя такому своего рода добровольному налогу. В обоих случаях техническая реализация систем может подразумевать использование DAO, смарт-контрактов и решений второго уровня для регулирования критериев выплат и анонимизации потоков платежей.
Разумеется, эти приблизительные идеи не являются ни исчерпывающими, ни взаимоисключающими или окончательными. И тем более они не должны навязываться сверху. Главное их назначение — обратить внимание на проблему и, возможно, положить начало обсуждению того, как можно реализовать вознаграждение биткойн-разработчиков без подрыва их автономии.
Подписывайтесь на BitNovosti в Telegram!
Делитесь вашим мнением об этой статье в комментариях ниже.
На основе источников:
- Bitcoin Decentralization and Where to Find It
- «Sufficiently Decentralized»
- Are Mining Pools Becoming A Problem?
- New research suggests Bitcoin mining centralized around Bitmain
- Shadow Boxing: Comments On Proof-Of-Work Centralization Hysteria
- PoW Centralisation Hysteria — What Size War Chest Is Required?