Правила консенсуса против политики реле В последнее время на X много новых людей спорят о политике реле (и некоторые старые пользователи, которые внезапно вернулись). Я вижу много смешения и путаницы между Правилами консенсуса и Политикой. Вот краткое объяснение каждого из них 🧵
Правила консенсуса — это правила, которые полные узлы применяют для определения, какие транзакции являются действительными. Иными словами, если ваш узел получает блок, содержащий транзакции, которые нарушают правила консенсуса, ваш узел отклонит этот блок.
Предположим, что ваш узел имеет блокчейн длиной 100. Он получает новый блок, который строится на 100-м блоке. Но он содержит транзакцию, которая нарушает некоторые правила консенсуса. Ваш узел отклонит этот блок и продолжит ждать, когда прибудет 101-й блок.
Некоторые примеры правил консенсуса: - право на субсидию блока сейчас составляет 3.125 BTC. Если майнер попытается напечатать больше, это будет недействительно - транзакция может тратить только неиспользованные монеты (без двойных трат) - скрипты блокировки должны быть удовлетворены (что имеет свои собственные правила) - лимит размера блока
Политика реле или политика мемпула контролирует, какие неподтвержденные транзакции ваш узел будет передавать другим узлам. Узлы Bitcoin образуют одноранговую сеть с другими узлами. Когда узел транслирует транзакцию, она отправляется всем его пирами, которые отправляют её всем своим пирами и так далее.
В конечном итоге транзакция достигает узла, который помещает транзакцию в блок. Обратите внимание, что майнеры могут помещать в блок любые транзакции, которые они хотят, включая отсутствие таковых и транзакции, которые они получают через какой-либо другой механизм (см. Mara Slipstream или Rebarlabs shield)
Как только транзакция попадает в блок, ваш узел будет хранить и передавать её независимо от политики, но до тех пор, пока она не будет подтверждена, ваш узел применяет политику, чтобы решить, передавать её или нет в p2p сети.
Вот некоторые примеры политик: - самая длинная цепочка неподтвержденных родительских/дочерних транзакций (25) - самый большой пакет неподтвержденных транзакций - транзакции с использованием опкодов OP_SUCCESS - максимальный размер/количество op_return - максимальное количество элементов в стеке свидетелей - шаблоны scriptpubkey
Обратите внимание, что политика является ПОДМНОЖЕСТВОМ консенсусно-действительных транзакций. Это важно: может быть транзакция, которую ваш узел НЕ будет передавать в P2P сети, но как только она окажется в блоке, ваш узел с радостью её примет. Это важно для обновлений softfork, устойчивости к цензуре и т.д.
Надеюсь, это поможет!
18,86K