BitVM2 — это подход к верификации произвольных вычислений на Биткоине, в котором всё «тяжёлое» исполнение выносится off-chain, а в L1 остаются лишь *обязательства о состоянии* и компактная процедура опровержения (fraud proof). В отличие от первой версии, BitVM2 делает споры permissionless — оспорить некорректный вывод может любой участник сети. На этой основе строится «тонкий» мост BTC ↔ L2 (*BitVM Bridge*) с минимально необходимым доверием: безопасность депозита опирается на правила L1 и возможность публичного челленджа.
BitVM2 простыми словами
*Задача.* Проверять сложные вычисления (например, корректность состояния внешнего «второго слоя») без изменений консенсуса Биткоина.
*Идея.* Мы не исполняем большую программу в Script. Мы верифицируем доказательство её корректного исполнения. На L1 публикуются коммиты на вход/выход и минимальные данные для спора; если кто-то замечает ложь, он запускает точечное опровержение по заранее приготовленной ветке скрипта.
*Результат.* Получаем «оптимистическую» модель: в счастливом пути ончейн-активность минимальна, а при споре достаточно нескольких шагов, чтобы наказать лжеца, заблокировать мошеннический вывод и защитить депозит.
Что нового по сравнению с BitVM (v1)
- Permissionless-челлендж. В v1 проверяющие фиксировались заранее; в BitVM2 спор инициировать может любой узел сети.
- Короткий спор. Верификатор «разрезается» на шаги; для доказательства лжи выполняется один целевой подскрипт, а не длинная игровая последовательность.
- Меньше доверия к операторам. На этапе инициализации достаточно модели «1-из-n честный», а в рантайме безопасность поддерживает всё сообщество за счёт открытых челленджей.
- Практичность моста. Конструкции peg-in/peg-out сводятся к набору пред-подписанных транзакций и Taproot-дереву веток опровержения (Taptree), что делает BitVM Bridge инженерно реализуемым в рамках стандартности L1.
Архитектура BitVM2: роли и компоненты
Участники
- Операторы — исполняют off-chain вычисления, публикуют коммиты и формируют транзакции моста.
- Наблюдатели/челленджеры — любые узлы Биткоина, способные инициировать спор и довести его до ончейн-опровержения.
- Пользователи — депонируют/выводят BTC через мост, работают с активами L2.
Коммиты и разрезанный верификатор
- Публикуем коммиты на вход x, выход y и (скрытый до челенджа) вектор промежуточных состояний z₁…zₖ.
- В Script реализуем верификатор доказательства (например, SNARK-верификатор), «разрезанный» на шаги f₁…fₖ. Каждый шаг — подскрипт, проверяющий фрагмент вычисления.
- При споре оператор обязан раскрыть нужные элементы zᵢ; любой участник может выполнить подскрипт fᵢ и показать несоответствие коммитам.
Taproot/Taptree как «меню опровержений»
- Адрес моста — Taproot-скрипт с ветками для разных сценариев: «счастливый вывод», тайм-ауты, аварийные пути и ветви спора по шагам верификатора.
- В счастливая траектория (никто не спорит) — средства уходят по тайм-аутной ветке.
- В споре — активируется нужная ветвь fᵢ, где проверяется ровно тот фрагмент, по которому заявлена ложь.
Ончейн-процесс в 2–3 шага
1) Коммит итогового состояния (и готовность к выводу).
2) Инициирование спора: публика нужных промежуточных данных.
3) Точечная верификация шага `fᵢ` в Script и фиксация результата в блокчейне.
В отличие от длинной «игры» из v1, BitVM2 позволяет завершать спор за считанные транзакции.
BitVM Bridge: двухсторонний пег BTC ↔ L2
Peg-in (депозит)
Пользователь отправляет BTC на адрес BitVM2-скрипта. Во внешней системе (L2) возникает эквивалентная «обёртка» (учётный токен). Ончейн-логика моста фиксирует коммиты нужных состояний.
Peg-out (вывод)
Пользователь гасит обёртку в L2, оператор готовит транзакцию вывода из Taproot-скрипта в L1. Любой наблюдатель может оспорить, если офчейн-состояние/доказательство некорректны. Для опровержения достаточно выполнить одну ветку-верификатор в Script.
Trust-модель и безопасность депозита
- Депозит не крадётся даже при сговоре операторов: худший случай — временная блокировка (liveness-риск), а не присвоение средств.
- Permissionless-челлендж снижает координационные риски: не нужен «назначенный аудит».
- Экономика тайм-аутов/штрафов делает бездействие оператора невыгодным — граф пред-подписанных транзакций исключает «выкуп живости».
Маршруты исполнения: happy-path и dispute-path
Happy-path
- Коммиты опубликованы, окно для спора прошло — средства уходят по заранее определённой ветке (обычно time-lock + spend).
- Ончейн-издержки минимальны: комиссию несут только депозит/вывод.
Dispute-path
- Любой участник подаёт челлендж; оператор раскрывает нужные zᵢ.
- Исполняется точечный подскрипт fᵢ, сравнивающий результат с коммитом.
- В случае лжи активируется аварийная ветка: мошеннический вывод блокируется, депозит остаётся в безопасности (до повторной попытки или возврата).
Сравнение: BitVM2, Lightning, сайдчейны, роллапсы
| Подход | Цель | Где исполняется логика | Кто оспаривает | Доверие к операторам/валидаторам |
|---|---|---|---|---|
| BitVM2 | Верификация произвольных вычислений и мосты BTC↔L2 | Исполнение off-chain; в L1 — коммиты + ветки опровержения | Любой узел (permissionless) | «1-из-n» на старте; дальше — публичный челлендж |
| Lightning | Быстрые и дешёвые платежи | Каналы и HTLC off-chain; закрытия в L1 | Контрагент/наблюдатели | Ликвидность каналов, маршрутизация |
| Сайдчейны | Расширенная функциональность вне L1 | Отдельный консенсус | Обычно ограниченный набор валидаторов/федерация | Требует доверия к федерации/вал-рам |
| Роллапсы | Масштабирование с наследованием безопасности L1 | Агрегация off-chain + публика/доказательства в L1 | Обычно permissionless | Зависит от модели (оптимист./zk) |
Ограничения и инженерные нюансы
- Лимиты Script и блока. Подскрипты должны быть компактны и «стандартны». Гранулярность разреза верификатора влияет на газоёмкость (комиссии) и длину спора.
- Challenge-period. Чтобы дать время наблюдателям, вывод из моста имеет окно для спора; это повышает время финализации вывода.
- Liveness-риски. Полный сговор/пассивность операторов может заморозить процесс до тайм-аутов. Лечится экономикой штрафов и продуманной топологией графа транзакций.
- DoS-векторы. Цена подачи челленджа не должна быть «копеечной» для злоумышленника и «запредельной» для честной стороны.
- Надзор и автоматика. Нужны «сторожевые» сервисы, которые мониторят мемпул/блоки и автоматически подают челленджи.
Дизайн-паттерны для разработчиков L2 на BitVM2
Разрез верификатора
- Реализуйте верификатор доказательства (а не большую бизнес-логику) и «порежьте» его на шаги fᵢ.
- Для каждого fᵢ предусмотрите отдельную ветку Taptree. Это сокращает ончейн-след и делает спор коротким.
Коммиты на состояния
- Коммиты x, y, скрытый z публикуются на старте.
- В споре раскрывается только требуемое подмножество z — по выбранной ветке fᵢ.
Граф пред-подписанных транзакций
- Задайте зависимости по тайм-аутам и выплатам так, чтобы невыгодно было бездействовать или «останавливать» процесс.
- Добавьте аварийные пути (возврат/сжигание по истечению срока) для честной фиксации результата, если никто не подтвердил вывод.
Ротация операторов
- Раз в эпоху/батч перевыпускайте коммиты и ключи операторов, не меняя общую модель безопасности.
- Permissionless-челлендж снимает жёсткую привязку к «списку верификаторов» — менять состав операторов легче.
Инфраструктура наблюдения
- Держите несколько «watchtowers» в разных регионах/АС, с автоматической реакцией на события в L1/L2.
- Логику формирования и подписи транзакций изолируйте и аудитируйте отдельно.
Практические кейсы применения
- Мосты BTC ↔ L2. Перенос ликвидности BTC в среду с расширенной функциональностью (DEX, деривативы, кредитование) без федеративной кастоди. Безопасность депозита наследуется от L1 за счёт ончейн-спора.
- Гибридные L2. Логика/данные обрабатываются off-chain, а финальный вывод BTC в L1 проверяется через BitVM2-ветви; итог — близко к «оптимистической» модели с наследованием безопасности.
- Инфраструктурные сервисы. Появляется спрос на провайдеров мониторинга, страхование «живости» вывода и SLA на автоматические челленджи.
FAQ по BitVM2
Это «роллап на Биткоине»? По свойствам — близко к оптимистической модели: проверяем корректность через возможность публичного спора. Корректнее говорить «off-chain исполнение с ончейн-верификацией разрезанного верификатора».
Кто может спорить? Любой узел сети Биткоина: челлендж permissionless, специализированный «аудитор» не нужен.
Можно ли украсть депозит при сговоре операторов? Нет. В худшем случае — временная блокировка/сжигание по тайм-аутам, но не присвоение чужих BTC.
Почему вывод из моста не мгновенный? Нужен challenge-period: время, в течение которого наблюдатели могут инициировать спор.
Чем отличается от Lightning? Lightning — про платежные каналы и мгновенные переводы; BitVM2 — про проверяемость произвольных вычислений и мосты BTC ↔ L2.
Термины и связи с базовыми концепциями
- Биткоин (BTC) — базовый L1, на котором строится BitVM2.
- Роллапсы — аналогии с оптимистической моделью (challenge-period).
- ZK-доказательства — класс систем доказательств, чьи верификаторы можно разрезать на подскрипты для Script.
- Сайдчейны — контрастная модель с отдельным консенсусом.
- Lightning Network — комплементарный подход для микроплатежей.
- Безопасность в крипте — общие риски мостов, ливнесс и экономические стимулы.
Рекомендации по внедрению (чек-лист для команд)
- Определите границы верификатора (какая часть логики превращается в проверяемое доказательство).
- Спроектируйте ветви Taptree: happy-path, спор по шагам fᵢ, аварийные пути, тайм-ауты.
- Сформируйте граф пред-подписанных транзакций с явными зависимостями и штрафами за бездействие.
- Заложите challenge-period с запасом под сетевую латентность и комиссии.
- Разверните watchtowers (минимум в двух независимых локациях), автоматизируйте подачу челленджей.
- Проведите тестовые «игры на опровержение» (game-day) до запуска и зафиксируйте процесс реагирования.
Итоги
BitVM2 делает возможной «проверяемую программируемость» вокруг Биткоина без хардфорков: сложные вычисления выполняются off-chain, а честность результата подтверждается на L1 через разрезанный верификатор и публичный спор. Это открывает путь к практичным мостам BTC ↔ L2 и к классам приложений, где безопасность критична, а доверие к операторам должно быть минимальным.
