Решение проблемы комиссий Bitcoin (без форка) | Мнение

Каждая платформа для умных контрактов имеет встроенный актив для оплаты комиссий. Например, Ethereum (ETH) использует ETH, Solana (SOL) — SOL, но с Bitcoin (BTC) ситуация усложняется. Если вам нужны выразительные приложения, обычно приходится использовать экономику второго слоя.

Резюме

  • Bitcoin не оценивает вычисления, только место в блоке. В отличие от Ethereum или Solana, рынок комиссий BTC основан на sat/vB для включения транзакций, а не на измерении выполнения умных контрактов.
  • Исполнение может происходить вне цепочки, а расчет — оставаться на Bitcoin. Такие системы, как OpNet, выполняют логику контрактов в VM на базе Wasm, при этом закрепляя платежи и финальные изменения состояния через обычные транзакции BTC.
  • BTC может выступать в роли газа без необходимости создания нового токена. Оценивая затраты на выполнение в сатоши и осуществляя расчеты через транзакции Bitcoin, приложения избегают создания второй экономики комиссий.

Например, на Stacks вы платите комиссии в STX. На слоях Bitcoin, совместимых с EVM, вам могут сказать, что BTC — это токен газа, но обычно это нативное представление слоя 2 с конвенциями, похожими на EVM (включая 18 десятичных знаков), и вы все равно работаете внутри этого слоя 2. Сам Bitcoin уже имеет чистый рынок комиссий, где пользователи делают ставки за место в блоке в сат/vB, а майнеры приоритетизируют транзакции с более высокими ставками.

Исходя из этого, что если взаимодействие с умным контрактом можно инициировать и оплатить как обычную транзакцию Bitcoin, с комиссиями в BTC (без дополнительного газа или форка), при этом умная часть выполняется где-то еще и остается доказуемо связанной с Bitcoin? OpNet стремится дать ответ.

Bitcoin не измеряет вычисления (это проблема)

Рынок комиссий Bitcoin отлично справляется с одной задачей: ценообразованием места в блоке. Вы конкурируете по sat/vB, майнеры выбирают транзакции с самыми высокими ставками, а сеть остается простой и устойчива к атакам. Что Bitcoin не делает — это запуск универсальной среды выполнения, которая могла бы измерять и взимать плату за произвольные вычисления. Скрипт Bitcoin специально статичен и не является Тьюринг-полным, в нем отсутствуют циклы или переходы, чтобы каждый узел мог предсказуемо валидировать скрипты без риска неограниченных вычислений.

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

Это не идеально, и было бы предпочтительно иметь систему, в которой платежи остаются внутри нативного рынка комиссий Bitcoin, а выполнение происходит где-то еще.

Исполнение — не то, что нужно Bitcoin

Когда вы принимаете, что Bitcoin Script специально ограничен (бесстатен и не предназначен для неограниченных вычислений), начинаете думать о том, как зафиксировать результаты и платежи.

На самом деле, выполнение может происходить в выделенной виртуальной машине, созданной для детерминированного выполнения логики умных контрактов, в то время как Bitcoin остается базовым слоем, который ставит метки времени, упорядочивает и оценивает взаимодействия через существующий рынок комиссий. В дизайне OpNet логика контрактов оценивается VM, ориентированной на Wasm (OP-VM), а более широкий стек узлов специально построен для управления и выполнения умных контрактов с использованием существующих механизмов транзакций и UTXO Bitcoin.

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

Как выглядит вызов контракта, оплаченный в BTC

Модель взаимодействия у нас основана на симуляции — затем расходе, а не на обычном выполнении умных контрактов, при этом финальный шаг — это реальная транзакция Bitcoin. Сначала ваше приложение вызывает метод контракта в режиме симуляции. Этот запрос проходит через провайдера к узлу OPNet, который выполняет контракт в своей VM и возвращает результат вызова (включая оценки газа/комиссий), не транслируя ничего в Bitcoin.

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

  • Майнерские сборы — нативные для Bitcoin. Вы выбираете ставку в sat/vB, при необходимости добавляете приоритетную плату в сатоши и устанавливаете жесткий лимит на расходы — maximumAllowedSatToSpend (параметр буквально так и называется).
  • Цель контракта выражается в виде адреса P2OP. Экземпляр контракта показывает свой формат адреса p2op, а транзакции ссылаются на «p2op адрес контракта» как на место назначения.

Между тем, собственный учет вычислений OpNet все еще существует. Но он оценивается в сатоши (предполагаемый SATS Gas, возвраты в SATS и т. д.), поэтому единица никогда не уходит в отдельную токеновую экономику.

Меньше трений, более чистые стимулы

Пользователи больше не вынуждены внедрять вторую экономику комиссий только для взаимодействия с приложениями. В Bitcoin комиссии — это аукцион за место в блоке, оцениваемый за байт и платимый майнерам. Когда вызовы контрактов — это просто транзакции Bitcoin, вы возвращаетесь к привычной среде (с комиссиями в sat/vB, очередью в мемпуле и стимулами майнеров), без необходимости изучать отдельный рынок газа.

Также инструменты ориентированы на стандартные рабочие процессы Bitcoin, такие как работа с UTXO, подключение провайдеров и даже офлайн/холодное подписание. Контракты живут в среде Wasm и пишутся на AssemblyScript, стремясь к выразительности, похожей на Solidity, без претензий, что Bitcoin Script внезапно стал VM.

Bitcoin как газ, без второго токена

Утверждение, что BTC не может выступать в роли газа, обычно основано на предположении, что базовый слой должен измерять вычисления для их оценки. Bitcoin не измеряет вычисления; он измеряет место в блоке и фиксирует стоимость.

Решение — позволить виртуальной машине выполнять вычисления детерминированно, а все изменения состояния маршрутизировать через стандартную транзакцию Bitcoin, где комиссии выражаются привычными терминами, такими как sat/vB, и ограничиваются в сатоши. В нашем случае это реализуется на уровне клиента через параметры feeRate и maximumAllowedSatToSpend.

Возможно, BTC как газ действительно реализуем. Комиссии остаются нативными для BTC от начала до конца, а среда выполнения контрактов — на базе WebAssembly (AssemblyScript → Wasm), что сохраняет выразительность логики без изменения валюты комиссий.

Frederic Fosco

Фредерик Фоско

Фредерик Фоско, также известный как Danny Plainview, — соучредитель OP_NET и занимается Bitcoin с 2013 года. Он запустил OP_NET, чтобы сделать Bitcoin нативно программируемым, открывая возможности для умных контрактов и DeFi-примитивов прямо на уровне слоя 1. Его цель — создавать реальную функциональность в цепочке без мостов, кастодианов, оберток или синтетического Bitcoin, сохраняя самоконтроль и децентрализацию как непреложные принципы.

BTC1,41%
ETH1,99%
SOL1,68%
STX1,39%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Репост
  • Поделиться
комментарий
Добавить комментарий
Добавить комментарий
Нет комментариев
  • Закрепить