Какая нам разница?
Система управления Биткоином важна, потому что Биткоин является первой успешной, наиболее ликвидной и самой известной криптовалютой. По словам Майкла Голдстейна: “Твердые деньги — основополагающая опора цивилизации, и Биткоин восстанавливает этот мощный инструмент социальной координации”. Если у модели управления Биткоином есть недостатки, это может помешать раскрытию его потенциала и, следовательно, заинтересованные стороны должны работать над их устранением.
Обсуждения управления Биткоином, как правило, фокусируются на том, кто в конечном итоге принимает решения; постоянными кандидатами являются майнеры, ноды и инвесторы. Цель и механизм управления часто упоминаются лишь косвенно, или вовсе остаются за рамками разговора. Взгляды на эффективность управления в прошлом часто основываются на том, кто “выиграл”, или “проиграл” при принятии конкретного решения, а не на адекватности самого процесса принятия решения.
Что такое управление Биткоином?
Управление Биткоином — это процесс, с помощью которого определяется, стоит ли внедрять и применять набор правил верификации транзакций и блоков. Участники, соответственно, принимают эти правила, чтобы проверять, соответствуют ли платежи, полученные ими в транзакциях и блоках, их субъективному определению “Биткоина”. Если два, или более индивидов принимают один и тот же набор правил проверки, они формируют интерсубъективный социальный консенсус относительно того, что такое “Биткоин”.
Какова цель управления Биткоином?
Существует широкий спектр мнений относительно того, какой должна быть цель управления Биткоином. Каких целей должна достигать оптимизация управления?
- Мэтт Коралло утверждает, что отсутсвие необходимости в доверии является наиболее важным свойством Биткоина. Мэтт определяет отсутсвие необходимости в доверии как “способность использовать Биткоин, не доверяя ничему, кроме запускаемого вами программного обеспечения с открытым исходным кодом”. Без отсутсвия необходимости в доверии все остальные положительные результаты поставлены под угрозу.
- Дэниел Кравиц утверждает, что управление де-факто оптимизируется под максимизацию стоимости Биткоина. Дэниел заявляет, что “общее правило, касающееся обновлений сети Биткоин […], заключается в том, что принимаются лишь те обновления, которые увеличивают ценность Биткоина”.
В контексте управления Биткоином эти два взгляда отражают классический разрыв между деонтологической этикой и консеквенциализмом соответственно. Я поддерживаю деонтологической подход Мэтта, сосредотачивающийся на отсутствии необходимости в доверии. На протяжении всей истории денег, от древних чеканщиков монет до современных центральных банков, доверие выпуска денег кому-либо приводило к злоупотреблению этим доверием. Пренебрежение отсутствием необходимости доверия может помочь цене Биткоина достичь локального максимума. Проблема заключается в том, что это впоследствии помешает достичь гораздо более высокого глобального максимума. Кроме того, нет никаких доказательств того, что изменения цены биткоина вызваны модернизацией протокола Биткоин. Возможно, обновления влияют на фундаментальную ценность Биткоина, но Биткоин настолько неликвиден и изменчив, что цена не может надежно отражать фундаментальную стоимость. Если мы не можем сопоставить модернизацию протокола с повышения стоимости биткоина, последовательный подход не кажется релевантным.
Прежде чем мы сможем оценить текущий процесс управления Биткоином в сравнении с заявленными целями поддержания отсутствия необходимости доверия, или повышения ценности Биткоина, мы должны попытаться определить, как на самом деле работает текущий процесс управления Биткоином.
Как сейчас работает процесс управления Биткоином?
Процесс управления Биткоином представляет собой набор правил верификации. На высоком уровне этот длинный перечень правил проверки охватывает синтаксис, структуры данных, ограничения использования ресурсов, проверки подлинности, временну́ю блокировку, согласование с мемпулом и основной цепочкой, расчет вознаграждения coinbase и комиссии и верификацию заголовка блока. Изменить эти правила не идя на компромисс нелегко.
Большинство этих правил были унаследованы от Сатоши Накамото. Некоторые из них были добавлены или исправлены для устранения ошибок и уязвимостей, связанных с отказом в обслуживании (DoS). Другие изменения в правилах были приняты с целью обеспечения работоспособности новых инновационных проектов. Например, Check Sequence Verify был утвержден для активации новых сценариев.
Исследования
Каждое изменение начинается с исследования. Например, SegWit начался с исследования проблем с гибкостью транзакций. Гибкость транзакций стала серьезной проблемой, потому что она помешала Lightning Network развернуться в качестве второго уровня Биткоина. Многие исследователи работали над тем, что в итоге приняло форму SegWit.
Критики указывают на периодические несостыковки в работе исследователей с ожиданиями пользователей и тем, что полезно для свойств сети. Кроме того, ученые в области компьютерных наук предпочитают “научные симуляции” “инженерным экспериментам”. Это было причиной споров в исследовательском сообществе.
Предложение
Когда исследователь находит решение проблемы, он делится своим предложением с другими разработчиками протокола. Этот обмен может быть в форме электронного письма участникам списка рассылки bitcoin-dev, официального документа и/или предложения по улучшению Биткоина (BIP).
Реализация
Предложение реализуется в программном обеспечении ноды исследователя, его предложившего. Другие разработчики протокола, заинтересованные в предложении также могут заняться его реализацией. Если исследователь не может реализовать предложение, или предложение не получает положительной экспертной оценки, то оно останется на этом этапе до тех пор, пока не будет отменено, или пересмотрено.
Хотя данная процедура может создать впечатление, что разработчики протокола Биткоин могут наложить вето на предложение, исследователь может представить свои доводы общественности и обойти существующих разработчиков. В этом случае успех исследователя помимо всего прочего зависит от его репутации и доверия участников сети.
На этапе реализации может возникнуть еще одна проблема. Модераторы эталонной реализации не поддержат предложение, если оно будет рассмотрено как спорное разработчиками протокола Биткоин и большинством Биткоин сообщества. Модераторы базовой реализации сознательно придерживаются политики отслеживания изменений консенсуса вместо того, чтобы навязывать какие-либо другие изменения. Эталонная реализация на C ++, размещенная по адресу github.com/bitcoin/bitcoin, является прямым преемником кодовой базы Сатоши. Это по-прежнему самая популярная реализация Биткоин нод благодаря своей зрелости и надежности.
Обойти ответственных за эталонную реализацию и внести согласованные изменения вне зависимости от их решения так же можно скопировав кодовую базу Биткоина и выпустив предложенные изменения. Так было в случае c активируемым пользователями софтфорка (UASF) BIP-148.
Предложение об изменении правил валидации может быть реализовано через софт-, или хард-форк. Некоторые предложения могут быть реализованы только через хард-форк. С точки зрения нод, участвующих в сети перед реализацией форка, софт-форк обладает прямой совместимостью. С помощью софт-форк нодам, работающим до форка не нужно обновлять свое программное обеспечение, чтобы продолжать валидацию согласованных правил, принятых до форка. Однако эти ноды не будут проверять новые правила, введенные посредством форка. Хард-форк же в свою очередь не обладает прямой совместимостью. Ноды предварительной цепочки окажутся в другой сети относительно нод, обновивших ПО, либо присоединившихся после форка.
О влиянии хард- и софт-форков на сеть и пользователей было много споров. Софт-форки считаются более безопасными, потому что они не требуют единогласного решения, но все же могут рассматриваться как принудительные. Кто-то, кто не согласен с софт-форк, должен провести хард-форк, чтобы отменить его.
Внедрение
После реализации изменений в программном обеспечении ноды нужно убедить пользователей, чтобы они использовали это программное обеспечение. Не все ноды равны по своей важности. Например, “обозреватели блокчейна” (blockchain explorers), являются более значимыми, поскольку многие участники полагаются на их ноды. Кроме того, биржа может определить, какому тикеру соответствует определенный набор правил проверки. Спекулятивные трейдеры, киты и другие биржи уравновешивают дисбаланс, вызванный влиянием обозревателей блокчейна на тикеры.
В то время как отдельные пользователи могут сигнализировать в социальных сетях, что они используют определенную версию программного обеспечения ноды, эти сигналы уязвимы к Сибил-атаке. Ключевым тестом консенсуса является возможность программного обеспечения вашей ноды принимать платежи в той валюте, которую вы считаете биткоином, и отправлять платежи в валюте, которую программное обеспечение нод ваших контрагентов считает биткоином.
Софт-форки имеют встроенную функцию управления, называемую BIP-9 Version bits with timeout and delay. Эта функция измеряет уровень поддержки софт-форков майнерами в реальном времени. Поддержка предложений майнерами используется в качестве косвенного инструмента измерения уровня поддержки более широким сообществом. К сожалению, этот показатель может быть неточным из-за централизации майнинга и конфликта интересов между майнерами и пользователями. “Голосование” майнеров в цепочке также поддерживает миф о том, что Биткоин — это демократия майнеров, и что сугубо майнеры принимают решение о валидности транзакции и блока. BIP-9 полезен до тех пор, пока мы признаем и принимаем ограничения косвенных измерений.
Исполнение
Изменения в правилах проверки применяются децентрализованной одноранговой (p2p) сетью полных нод. Ноды используют правила проверки, чтобы независимым образом убедиться, что платежи, полученные оператором ноды, являются частью допустимых Биткоин-транзакций и включены в валидные Биткоин блоки. Ноды не распространяют транзакции и блоки, нарушающие правила. Фактически, ноды отключают и блокируют участников, которые отправляют недопустимые транзакции и блоки. Как сказал StopAndDecrypt: “Валидации Биткоина — неприступная крепость”. Если каждый решит, что добытый блок недействителен, то coinbase вознаграждение майнеров и комиссии за транзакций обесцениваются, а сам блок отклоняется как недействительный.
Роль майнеров состоит в том, чтобы обеспечить функцию временнóй метки, обеспеченную proof-of-work (доказательством выполнения работы). Количество предоставляемого хэшрейта основано на стоимости оборудования и электроэнергии с одной стороны и доходе от вознаграждения в виде coinbase транзакции и комиссий с другой. Майнеры являются наемниками, и в прошлом они выполняли функцию временнóй метки без полной валидации соблюдения правил. В силу централизации майнинга, майнерам не стоит доверять в применении правил валидации самостоятельно.
Благоприятно ли повлияла нынешняя модель управления Биткоином на отсутствие необходимости в доверии?
На мой взгляд, нынешняя модель управления Биткоином предотвратила снижение уровня отсутствия необходимости в доверии. Рост количества операций с участием биткоинов в сети за последние 5 лет, похоже, не собирался замедляться. Если бы модель управления Биткоином не была устойчивой к прошлогодним сигналам майнеров об удвоении максимального веса блока, выбор мог бы пасть на улучшение пропускной способности транзакций вместо поддержки функции отсутствия необходимости в доверии.
Привела ли нынешняя модель управления Биткоином к обновлениям, увеличивающим ценность Биткоина?
Я думаю, что в данном случае невозможно установить причинную связь. На данный момент цена намного выше, чем 2 года назад, но, похоже, это эндогенный процесс. Он — следствие психологии трейдеров, а не технологических основ. Что касается основных показателей, то нельзя отрицать, что управление Биткоином оказало положительное влияние на изменения посредством консенсуса, от которых зависит успех Lightning network. Я экспериментировал с каналами и платежами Lightning и не сомневаюсь, что LN увеличивает ценность Биткоином.
Этот пост основан на моем выступлении на конференции Chain-In: https://youtu.be/yzQ4OPjPPP0