Перейти к содержимому
buybitcoinsmart

Глоссарий / Протокол и обновления

Мягкий форк, активированный пользователями

Другие названия: UASF.

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

Определено в BIP-148.

Идея переворачивает обычный порядок действий. Вместо того чтобы ждать, пока вычислительная мощность просигнализирует о готовности, узлы, которые принимают платежи, объявляют дату, после которой они будут отклонять любой блок, не соответствующий правилам. BIP-148 установил эту дату на 1 августа 2017 года, и этой убедительной угрозе широко приписывают прекращение тупика в сигнализации, длившегося с ноября 2016 года.

Как это работает

Правило в конечном счете обеспечивается при валидации, а не при майнинге, и активируемый пользователями мягкий форк строится именно на этом факте.

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

Механизм основан на дате, а не на пороге. BIP-148 требовал, чтобы начиная с 1 августа 2017 года каждый блок сигнализировал о готовности к SegWit, и предписывал узлам отбрасывать блоки, которые этого не делали. Это ужесточение правил, поэтому соответствующая правилам цепочка остается действительной для узлов, которые никогда не обновлялись. Чего это не устраняет, так это риска разделения: если большая часть вычислительной мощности продолжает майнить несоответствующие блоки, у соблюдающей стороны меньше накопленной работы, и две цепочки сосуществуют, пока одна из сторон не уступит.

Позже BIP-8 превратил этот подход в общий набор параметров. Он подсчитывает сигналы так же, как BIP-9, но добавляет параметр lockinontimeout, обычно записываемый как LOT. Если LOT имеет значение false, развертывание просто истекает, если майнеры так и не достигают порога. Если LOT имеет значение true, оно фиксируется по высоте тайм-аута в любом случае, что представляет собой активируемый пользователями мягкий форк, выраженный как параметр конфигурации.

Где это встречается

Последовательность событий 2017 года является единственным завершенным примером в биткоине, и ее стоит знать по порядку. BIP-148 был опубликован в марте 2017 года разработчиком под именем Shaolin Fry и подхвачен операторами узлов в течение весны. Перед лицом августовского крайнего срока майнеры в июле приняли BIP-91, чтобы сделать сигнализацию SegWit обязательной среди них самих. Затем SegWit зафиксировался в блоке 479 808 8 августа 2017 года и стал обязательным к исполнению с блока 481 824 24 августа 2017 года. Назначенная дата наступила без длительного разделения, потому что требуемый результат уже был достигнут.

Подход вновь появился перед Taproot. В конце 2020 года и начале 2021 года спор шел исключительно о том, выпускать ли BIP-8 с LOT true или false, был опубликован альтернативный клиент с LOT true, а компромиссом стал Speedy Trial, который установил короткое окно и никакой принудительной активации. Майнеры достигли порога в июне 2021 года, так что этот вопрос так и не был проверен.

Если вы храните биткоин, важный вывод состоит в том, что вес всему этому придает запуск собственного узла. Активируемый пользователями мягкий форк учитывает пользователей, которые проводят валидацию, а того, чей баланс полностью находится на бирже, представляет программное обеспечение этой биржи, а не его собственное.

Активируемый пользователями мягкий форк vs жесткий форк

Активируемый пользователями мягкий форк ужесточает правила; жесткий форк ослабляет их, и путаница 2017 года возникла из-за того, что оба несли риск разделения. При BIP-148 старый кошелек продолжал работать, и полученная цепочка оставалась действительной для всех предыдущих версий программного обеспечения, чего жесткий форк обещать не может. Риск разделения был временным и зависел от поведения майнеров, тогда как разделение при жестком форке заложено в конструкцию с первого несовместимого блока.

Не путать с

Часто задаваемые вопросы

Привел ли BIP-148 к разделению биткоина 1 августа 2017 года?

Продолжительного разделения не произошло. Майнеры приняли BIP-91 в июле 2017 года, чтобы сделать сигнализацию SegWit обязательной среди них самих, SegWit зафиксировался 8 августа, и назначенный день прошел, когда требуемый им результат уже был обеспечен.

Дает ли мне запуск узла право голоса в мягком форке, активированном пользователями?

Да, в единственном смысле, который имеет значение: ваш узел решает, какие блоки вы принимаете. Биткоины, хранящиеся на криптобирже, вместо этого представлены программным обеспечением этой биржи, поэтому спор обычно ведется вокруг экономически значимых узлов.

Связанные термины

Еще в разделе «Протокол и обновления»

Читать эту страницу на английском