Logo
Compartilhe este artigo

Программисты Bitcoin сталкиваются со старой проблемой: как обновить всю сеть

В сообществе разработчиков Bitcoin вновь поднимается старый спор, подчеркивающий ONE из важнейших проблем, с которой сталкиваются децентрализованные системы.

MOVING PARTS: How does a whole network smoothly upgrade in a way that's backward-compatible, allowing those with older versions of the software to continue participating? (Image via Library of Congress/Rawpixel)
MOVING PARTS: How does a whole network smoothly upgrade in a way that's backward-compatible, allowing those with older versions of the software to continue participating? (Image via Library of Congress/Rawpixel)

В сообществе разработчиков Bitcoin вновь поднимается старый спор, подчеркивающий ONE из важнейших проблем, с которой сталкиваются децентрализованные системы: как обновлять программное обеспечение, когда за это, по сути, никто не отвечает.

A História Continua abaixo
Não perca outra história.Inscreva-se na Newsletter The Protocol hoje. Ver Todas as Newsletters

На этот раз катализатором является Taproot/Schnorr — многолетняя разработка обновления для обеспечения Политика конфиденциальности и масштабирования, которая уже замечена захватывающий прогресс в последнее время, особенно сейчас, когда код в форме « Request на извлечение» проверяется и тестируется, что приближает к реальности изменение, впервые обсуждавшееся много лет назад.

Изменение кода само по себе пока T вызвало споров среди разработчиков. являетсядля обсуждения - лучший способ активировать изменение, сделав, наконец, возможным отправкуBitcoin (BTC) транзакций этим новым способом.

В основе того, почему вообще возникает этот вопрос, лежит то, что у Bitcoin нет лидера, и он распределен по всему миру. Как вся сеть плавно обновляется таким образом, чтобы обеспечить обратную совместимость, позволяя тем, у кого старые версии программного обеспечения, продолжать участвовать? Каков наилучший способ для Bitcoin вносить такие изменения без сбоев?

Для ясности: код биткоина обновлен.почти каждый деньглобальной сетью разработчиков проекта с открытым исходным кодом. Но «консенсусные» изменения кода, которые затрагивают более глубокую часть Bitcoin, требуют «мягкого форка», который, в свою очередь, требует определенной координации для гладкого прохождения.

«Существует ряд проектов софт-форков, которые в последнее время демонстрируют значительный прогресс в плане внедрения и будущего принятия. Однако по разным причинам методы активации... получили ограниченное обсуждение»,CORE Bitcoinавтор Мэтт Коралло написал вэлектронное письмо в прошлом месяце в список разработчиков Bitcoin , который возобновил дебаты.

Существует два основных варианта реализации софт-форка. ONE из вариантов, Bitcoin Improvement Proposal (BIP) 9, использовался для нескольких софт-форков в прошлом. Он обеспечивает шахтерызаранее подготовлены к софтфорку, чтобы убедиться, что изменение плавно распространится по всей сети. Распространенное возражение против такого подхода заключается в том, что он дает майнерам слишком много власти.

В качестве альтернативы есть BIP 8, также известный как активируемый пользователем софтфорк (UASF), который активируется независимо от того, сигнализируют ли майнеры о своей готовности или нет. В зависимости от исполнения этот подход может вызвать другие проблемы, предупредил Коралло.

Урок истории

Обсуждение началось в 2017 году, когда BIP 9 был использован для активации Segregated Witness, или SegWit, изменения, неотъемлемого для большого дебата о масштабировании биткоина. Чтобы защитить майнеров от майнинга недействительных блоков и потери денег, SegWit не активировался, пока 95 процентов майнеров не поднимут флаг, показывающий, что они готовы.

Большинство майнинговых пулов (групп майнеров, объединяющих свои вычислительные мощности в сети) заявили, что не поддержат SegWit — по сути, наложив на него вето — если только он не будет сопряжен с увеличением параметра размера блока. (Таинственный создатель биткоина установил потолок в 1 мегабайт, ограничив количество транзакций, которые можно было бы поместить в блоки, публикуемые примерно каждые 10 минут.)

Это было спорное требование, которое, по мнению многих, могло привести к централизации сети (и в любом случае T могло быть успешно выполнено, если бы Bitcoin не был централизован).

Короче говоря, инцидент показал, что майнинговые пулы могут использовать 95-процентный порог для извлечения других изменений вместо изначальной цели: облегчить себе переход на новые значения и T потерять деньги.

Многим биткоинщикам это не понравилось, поскольку они посчитали, что майнеры пытаются использовать свою власть, чтобы протащить изменения, которые не всем пользователям нужны.

Пока бушевали эти дебаты, таинственный разработчик под псевдонимом Shaolinfry указал, что биткойнеры все еще могут сделать обновление. Корень идеи в том, что пользователи Bitcoin и биржи должны решать, следует ли проводить изменение, а майнеры будут Социальные сети их желаниям, а не наоборот. Этот метод использовался для активации других изменений Bitcoin . Shaolinfy формализовал эту идею в BIP 8, также известном как UASF.

Большая группа пользователей громко заявила о поддержке SegWit UASF в социальных сетях и начала запускать программное обеспечение. Казалось, это дало желаемый эффект. До того дня, как UASF активировался, майнеры начали отмечать поддержку SegWit.

Примечательно, что в это бурное время циркулировало несколько разновидностей UASF, ONE была более осторожной (и более консервативно рассчитанной по времени) и менее спорной, чем другая. Но не вдаваясь в подробности, вывод для некоторых разработчиков Bitcoin заключался в том, что UASF был лучшим способом вводить изменения.

В то время Расти Рассел, разработчик Bitcoin -стартапа Blockstream, даже извинился за свое участие в создании BIP 9.

«Я T ожидал, что этот контрольно-пропускной пункт будет использоваться как контрольно-пропускной пункт для взлома сети. Это существенно меняет модель риска;БИП-8«Теперь это гораздо более совершенный метод для модернизации сети, где майнеры могут только ускорить процесс, а не блокировать его», — написал он в Mediumпочта.

Долгие воспоминания

Помня всю эту драму, некоторые разработчики опасаются снова использовать BIP 9 для подписей Шнорра/Taproot или других будущих изменений.

«Я считаю, что BIP 9 — это доказанный провал»,сказал CORE Bitcoin Разработчик Люк Дашжр, отвечая Коралло, продолжил приводить технические причины своего возражения. Во время дебатов о масштабировании Дашжр был ONE из самых ярых сторонников UASF для продвижения SegWit.

Алекс Босворт, разработчик стартапа Lightning Labs, выразил схожее Мнение, отчасти основанное на недавней драме вокруг Bitcoin Cash (BCH) — небольшой Криптовалюта , которая отделилась от Bitcoin в 2017 году.

Недавно появилась значительная группа пулов для майнинга Bitcoin Cash.предложенныйчто часть BCH из каждого нового блока должна направляться в фонд развития, что Босворт рассматривает как еще один пример того, как майнинговые пулы играют мускулами таким образом, что это плохо сказывается на децентрализации Криптовалюта .

«Я знаю, что общепринятая идея развертывания софт-форка — попытаться использовать традиционный метод дружественного майнинга. Но добрую [ONE ] нашего текущего хэшрейта только что организовали картель с целью цензуры, чтобы украсть субсидии на монеты», твитнулБосворт, работающий над инфраструктурой для скоростной и масштабируемой сети Lightning.

Вот почему он поддерживает метод UASF, хотя и с более длительным временным горизонтом.

«Мне кажется, что наиболее подходящим вариантом является медленное развитие UASF», — добавил он.

Синтез

Однако некоторые, призывая к осторожности, опасаются, что рассмотрение UASF как единственного метода активации может открыть возможность для проталкивания изменений, которые могут навредить Bitcoin.

Например, ONE из причин, по которой разработчикам изначально понравился BIP 9, является то, что порог в 95 процентов мог бы обеспечить своего рода защитную сетку. Если бы проблема обнаружилась, когда майнинговые пулы работали над обновлением своего программного обеспечения, то пулы могли бы остановить изменение. Сложнее остановить активацию UASF после ее инициирования.

Вот почему Коралло снова предложил старую идею, что-то вроде смеси BIP 8 и BIP 9. Мягкий форк должен был начаться с BIP 9. Затем, если он провалится в течение года из-за «необоснованных возражений», пользователи могли бы обсудить и перегруппироваться в течение шести месяцев. После этого, если изменение определенно то, чего хочет сообщество, они могли бы попробовать BIP 8 в течение еще одного года.

Некоторые разработчики могут утверждать, что этот период времени слишком велик для изменений без «необоснованных возражений». Но Коралло призвал к терпению.

Выяснение того, действительно ли возражения «необоснованны», может занять некоторое время. «В случае, если он не сработает, процесс BIP 9, по сути, предоставляет хорошую возможность узнать об уровне готовности и желания сообщества к данному изменению», — сказал он.

«Разработка Bitcoin — это не гонка. Если нам придется ждать 42 месяца, это гарантирует, что мы не создадим негативный прецедент, о котором потом пожалеем, поскольку Bitcoin продолжает расти», — сказал он. Читатели могут прочитать полное обоснование Коралло, а также множество тонких ответов разработчиков здесь.

И хотя в 2017 году Рассел, казалось, был категорически против BIP 9, в интервью CoinDesk он заявил, что теперь согласен с этим гибридным подходом.

«Поскольку попытка майнеров заблокировать изменения T сработала, и мы T сильно пострадали от задержки, я T против активации BIP-9», — сказал он. Но он предложил более короткие сроки, чем Коралло.

«Возможно, годичный срок действия BIP-9 слишком велик, и предпочтительнее было бы шестимесячное истечение срока. Таким образом, пользователи смогут организовать UASF, если активация BIP-9 не удастся и они посчитают, что это произошло из-за обструкционизма майнеров», — сказал Рассел.

Инженеры кропотливо изучают предложенный код Taproot/Schnorr, чтобы исправить любые оставшиеся проблемы. Так что у разработчиков еще есть время обсудить варианты активации. Но сообществу нужно будет что-то решить, прежде чем изменение можно будет добавить в Bitcoin, что повысит Политика конфиденциальности сети.

Alyssa Hertig

Алисса Хертиг, технический репортер CoinDesk, программист и журналист, специализирующийся на Bitcoin и Lightning Network. На протяжении многих лет ее работы также появлялись в VICE, Mic и Reason. В настоящее время она пишет книгу, в которой исследует все тонкости управления Bitcoin . Алисса владеет некоторым количеством BTC.

Alyssa Hertig