TXHASH представляет собой значительный шаг вперёд в технологии ковенанта Bitcoin, основываясь на ранних предложениях для создания более сложных структур транзакций с беспрецедентной гибкостью. Выдвинутый Стивеном Рузом и Брэндоном Блэком в рамках новой волны инноваций в области ковенантов, этот протокол предлагает то, что можно лучше всего описать как усовершенствованный подход к проверке транзакций, позволяющий разработчикам точно указывать, какие элементы транзакции должны оставаться фиксированными, а какие могут быть изменены позднее.
Это исследование txhash является третьим подробным анализом серии, рассматривающей зрелые предложения по ковенантам. В отличие от более простых механизмов ковенантов, txhash работает через гибкую структуру, которая позволяет сценаристам выбирать, какие конкретные компоненты транзакции будут зафиксированы, а какие останутся открытыми для последующих изменений во время расходования.
Прежде чем углубляться в работу txhash, важно понять основные компоненты данных, составляющих любую транзакцию Bitcoin.
Каждая транзакция содержит глобальные параметры, определяющие её общую структуру. Поле version идентифицирует тип транзакции, а поля marker и flag указывают, использует ли она формат SegWit. Транзакция также указывает, сколько входов и выходов она содержит, а через поле nLocktime задаются важные параметры тайм-локов.
Каждый вход вносит конкретную информацию в транзакцию. Он ссылается на предыдущую транзакцию через TXID и указывает, какой конкретный выход расходуется, через индекс VOUT. Вход также содержит номер последовательности, который выполняет двойную функцию — сигнализирует о разрешении Replace-by-Fee (RBF) и управляет ограничениями относительного тайм-лока.
Выходы имеют свою структуру. Каждый назначает определённую сумму в сатоши получателю, включает размер скрипта блокировки и содержит ScriptPubkey — фактическую криптографическую загадку, которую будущие расходующие должны решить, чтобы получить доступ к этим средствам.
Поле witness (или ScriptSig для устаревших не-SegWit транзакций) содержит подписи для расходования, но функционирует отдельно от вопросов валидации txhash. Это различие важно для понимания, почему txhash предлагает такую гибкую проверку транзакций.
Как механизм TXHASH обеспечивает проверку транзакций
Основная инновация txhash заключается в замене подхода CTV «всё или ничего» на более гранулярный контроль. Где CHECKTEMPLATEVERIFY (CTV) фиксирует всю структуру транзакции через один хэш, txhash вводит TxFieldSelector — механизм, который точно сообщает, какие компоненты транзакции зафиксированы через хэш, а какие остаются неограниченными.
Представьте TxFieldSelector как сложную маску, применяемую к данным транзакции. Каждый бит в этой переменной длины байтов соответствует определённым полям транзакции — номерам версий, значениям nLocktime, параметрам последовательности и так далее. На уровне входов разработчики могут выбрать, зафиксировать ли предыдущий ID выхода, номер последовательности или дополнение taproot. На уровне выходов они решают, ограничивать ли ScriptPubkey, значения суммы, оба или ни одного.
Эта гранулярность выходит за рамки выбора отдельных полей. Протокол позволяет разработчикам точно указывать, к каким входам и выходам применяются эти ограничения, что даёт возможность создавать асимметричные ограничения, при которых разные участники транзакции сталкиваются с разными требованиями к расходованию средств. Разработчик может обеспечить, чтобы его монеты следовали определённому пути расходования, оставаясь при этом равнодушным к тому, как другие участники используют свою долю.
Техническая сложность сборки TxFieldSelector отражает эту гибкость — в документации по предложению BIP подробно описаны многочисленные варианты комбинаций и последовательности полей. Основная идея в том, что txhash превращает проверку транзакции из бинарного выбора (полное зафиксирование или отсутствие фиксации) в спектр возможностей, адаптированных под конкретные требования протокола.
Почему TXHASH превосходит ранние подходы к ковенантам
TXHASH сохраняет все возможности, которые предоставляет CTV — позволяя использовать все текущие оптимизации предварительно подписанных транзакций с меньшими затратами на координацию. Но протокол значительно расширяет эту базу за счёт нескольких практических преимуществ.
Каналы второго уровня получают выгоду от улучшенного управления комиссиями. В настоящее время, чтобы обеспечить ускоренное подтверждение транзакций в рамках слоя два, необходимо создавать специальные anchor outputs для поддержки повышения комиссии Child Pays For Parent (CPFP). С txhash, выходы контрагентов в мультипартийных транзакциях могут задаваться независимо, а участники сохраняют гибкость в настройке своих собственных значений выходов — в том числе немного уменьшая их, чтобы RBF транзакции было проще, при этом сохраняя безопасность протокола.
Дизайн мультипартийных протоколов достигает нового уровня сложности. Разные участники транзакции теперь могут получать индивидуальные гарантии о том, как именно будут потрачены их монеты, без необходимости согласования с другими участниками. Один участник может принять зафиксированное txhash обязательство, гарантирующее, что его монеты следуют одобренному пути, в то время как остальные участники могут полностью не заботиться о структуре транзакции других.
В сочетании с CHECKSIGFROMSTACK (CSFS) txhash позволяет разработчикам создавать полностью обобщённую систему SIGHASH внутри скрипта. Существующие флаги SIGHASH в Bitcoin остаются ограниченными — SIGHASH_ALL подписывает все входы и выходы, SIGHASH_NONE — только входы без выходов, SIGHASH_SINGLE — пары вход-выход с одинаковым индексом. Ни один из них не позволяет добавлять новые входы без аннулирования подписей. Варианты ANYONECANPAY ограничивают scope одним входом, но всё равно ограничивают гибкость выходов.
Путём «сайдлоадинга» пользовательских TxFieldSelectors через CSFS разработчики могут эмулировать системы SIGHASH, которые фиксируют подписи на те компоненты транзакции, которые они указывают, без необходимости принимать жёсткие ограничения классических SIGHASH.
TXHASH также позволяет задавать ограничения равенства значений по стоимости (value equality constraints) для входов и выходов транзакции. Разработчик может задать отдельные TxFieldSelectors, фиксирующие только поле суммы сатоши для одного входа или выхода, и затем проверить, совпадают ли эти хэши на стеке. Эта возможность приближается к опасной территории — она позволяет реализовать доверительный обмен, необходимый для автоматизированных рынков на блокчейне.
Анализ вторичных эффектов и рисков протокола
Гибкость, которая делает txhash мощным инструментом для легитимной разработки протоколов, одновременно открывает широкое пространство для потенциальных системных последствий. Возможность обеспечить равенство по сумме между входами и выходами становится очень близкой к реализации доверительных автоматизированных механизмов обмена на Bitcoin.
Это важно, потому что аналогичные возможности на других блокчейнах стали серьёзным источником Miner Extractable Value (MEV) — ситуаций, когда валидаторы могут переупорядочивать транзакции, вставлять свои или «сэндвичить» чужие для извлечения стоимости. MEV доказал свою роль в централизации и создании стимулов к манипуляциям в различных экосистемах блокчейна.
TXHASH не стоит недооценивать как инструмент разработки. Предоставляемые им primitives позволяют создавать чрезвычайно выразительные протоколы, которые могут открыть новые возможности для приложений на Bitcoin. Однако потенциальные применения таких primitives требуют серьёзного анализа с точки зрения рисков и преимуществ протокола. Возможность проверять транзакции с такой точностью, хоть и полезна для многих сценариев, порождает новые проектные возможности, которые могут непредсказуемо изменить базовые стимулы Bitcoin.
Тщательный анализ вторичных эффектов txhash остаётся важным по мере продвижения этого предложения к возможной реализации.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
Понимание TXHASH: расширенный протокол заветов Bitcoin
TXHASH представляет собой значительный шаг вперёд в технологии ковенанта Bitcoin, основываясь на ранних предложениях для создания более сложных структур транзакций с беспрецедентной гибкостью. Выдвинутый Стивеном Рузом и Брэндоном Блэком в рамках новой волны инноваций в области ковенантов, этот протокол предлагает то, что можно лучше всего описать как усовершенствованный подход к проверке транзакций, позволяющий разработчикам точно указывать, какие элементы транзакции должны оставаться фиксированными, а какие могут быть изменены позднее.
Это исследование txhash является третьим подробным анализом серии, рассматривающей зрелые предложения по ковенантам. В отличие от более простых механизмов ковенантов, txhash работает через гибкую структуру, которая позволяет сценаристам выбирать, какие конкретные компоненты транзакции будут зафиксированы, а какие останутся открытыми для последующих изменений во время расходования.
Архитектура транзакции: понимание строительных блоков Bitcoin
Прежде чем углубляться в работу txhash, важно понять основные компоненты данных, составляющих любую транзакцию Bitcoin.
Каждая транзакция содержит глобальные параметры, определяющие её общую структуру. Поле version идентифицирует тип транзакции, а поля marker и flag указывают, использует ли она формат SegWit. Транзакция также указывает, сколько входов и выходов она содержит, а через поле nLocktime задаются важные параметры тайм-локов.
Каждый вход вносит конкретную информацию в транзакцию. Он ссылается на предыдущую транзакцию через TXID и указывает, какой конкретный выход расходуется, через индекс VOUT. Вход также содержит номер последовательности, который выполняет двойную функцию — сигнализирует о разрешении Replace-by-Fee (RBF) и управляет ограничениями относительного тайм-лока.
Выходы имеют свою структуру. Каждый назначает определённую сумму в сатоши получателю, включает размер скрипта блокировки и содержит ScriptPubkey — фактическую криптографическую загадку, которую будущие расходующие должны решить, чтобы получить доступ к этим средствам.
Поле witness (или ScriptSig для устаревших не-SegWit транзакций) содержит подписи для расходования, но функционирует отдельно от вопросов валидации txhash. Это различие важно для понимания, почему txhash предлагает такую гибкую проверку транзакций.
Как механизм TXHASH обеспечивает проверку транзакций
Основная инновация txhash заключается в замене подхода CTV «всё или ничего» на более гранулярный контроль. Где CHECKTEMPLATEVERIFY (CTV) фиксирует всю структуру транзакции через один хэш, txhash вводит TxFieldSelector — механизм, который точно сообщает, какие компоненты транзакции зафиксированы через хэш, а какие остаются неограниченными.
Представьте TxFieldSelector как сложную маску, применяемую к данным транзакции. Каждый бит в этой переменной длины байтов соответствует определённым полям транзакции — номерам версий, значениям nLocktime, параметрам последовательности и так далее. На уровне входов разработчики могут выбрать, зафиксировать ли предыдущий ID выхода, номер последовательности или дополнение taproot. На уровне выходов они решают, ограничивать ли ScriptPubkey, значения суммы, оба или ни одного.
Эта гранулярность выходит за рамки выбора отдельных полей. Протокол позволяет разработчикам точно указывать, к каким входам и выходам применяются эти ограничения, что даёт возможность создавать асимметричные ограничения, при которых разные участники транзакции сталкиваются с разными требованиями к расходованию средств. Разработчик может обеспечить, чтобы его монеты следовали определённому пути расходования, оставаясь при этом равнодушным к тому, как другие участники используют свою долю.
Техническая сложность сборки TxFieldSelector отражает эту гибкость — в документации по предложению BIP подробно описаны многочисленные варианты комбинаций и последовательности полей. Основная идея в том, что txhash превращает проверку транзакции из бинарного выбора (полное зафиксирование или отсутствие фиксации) в спектр возможностей, адаптированных под конкретные требования протокола.
Почему TXHASH превосходит ранние подходы к ковенантам
TXHASH сохраняет все возможности, которые предоставляет CTV — позволяя использовать все текущие оптимизации предварительно подписанных транзакций с меньшими затратами на координацию. Но протокол значительно расширяет эту базу за счёт нескольких практических преимуществ.
Каналы второго уровня получают выгоду от улучшенного управления комиссиями. В настоящее время, чтобы обеспечить ускоренное подтверждение транзакций в рамках слоя два, необходимо создавать специальные anchor outputs для поддержки повышения комиссии Child Pays For Parent (CPFP). С txhash, выходы контрагентов в мультипартийных транзакциях могут задаваться независимо, а участники сохраняют гибкость в настройке своих собственных значений выходов — в том числе немного уменьшая их, чтобы RBF транзакции было проще, при этом сохраняя безопасность протокола.
Дизайн мультипартийных протоколов достигает нового уровня сложности. Разные участники транзакции теперь могут получать индивидуальные гарантии о том, как именно будут потрачены их монеты, без необходимости согласования с другими участниками. Один участник может принять зафиксированное txhash обязательство, гарантирующее, что его монеты следуют одобренному пути, в то время как остальные участники могут полностью не заботиться о структуре транзакции других.
В сочетании с CHECKSIGFROMSTACK (CSFS) txhash позволяет разработчикам создавать полностью обобщённую систему SIGHASH внутри скрипта. Существующие флаги SIGHASH в Bitcoin остаются ограниченными — SIGHASH_ALL подписывает все входы и выходы, SIGHASH_NONE — только входы без выходов, SIGHASH_SINGLE — пары вход-выход с одинаковым индексом. Ни один из них не позволяет добавлять новые входы без аннулирования подписей. Варианты ANYONECANPAY ограничивают scope одним входом, но всё равно ограничивают гибкость выходов.
Путём «сайдлоадинга» пользовательских TxFieldSelectors через CSFS разработчики могут эмулировать системы SIGHASH, которые фиксируют подписи на те компоненты транзакции, которые они указывают, без необходимости принимать жёсткие ограничения классических SIGHASH.
TXHASH также позволяет задавать ограничения равенства значений по стоимости (value equality constraints) для входов и выходов транзакции. Разработчик может задать отдельные TxFieldSelectors, фиксирующие только поле суммы сатоши для одного входа или выхода, и затем проверить, совпадают ли эти хэши на стеке. Эта возможность приближается к опасной территории — она позволяет реализовать доверительный обмен, необходимый для автоматизированных рынков на блокчейне.
Анализ вторичных эффектов и рисков протокола
Гибкость, которая делает txhash мощным инструментом для легитимной разработки протоколов, одновременно открывает широкое пространство для потенциальных системных последствий. Возможность обеспечить равенство по сумме между входами и выходами становится очень близкой к реализации доверительных автоматизированных механизмов обмена на Bitcoin.
Это важно, потому что аналогичные возможности на других блокчейнах стали серьёзным источником Miner Extractable Value (MEV) — ситуаций, когда валидаторы могут переупорядочивать транзакции, вставлять свои или «сэндвичить» чужие для извлечения стоимости. MEV доказал свою роль в централизации и создании стимулов к манипуляциям в различных экосистемах блокчейна.
TXHASH не стоит недооценивать как инструмент разработки. Предоставляемые им primitives позволяют создавать чрезвычайно выразительные протоколы, которые могут открыть новые возможности для приложений на Bitcoin. Однако потенциальные применения таких primitives требуют серьёзного анализа с точки зрения рисков и преимуществ протокола. Возможность проверять транзакции с такой точностью, хоть и полезна для многих сценариев, порождает новые проектные возможности, которые могут непредсказуемо изменить базовые стимулы Bitcoin.
Тщательный анализ вторичных эффектов txhash остаётся важным по мере продвижения этого предложения к возможной реализации.