Пользователям Bitcoin должно быть достаточно BTC на Bitcoin, чтобы выполнить вывод их BTC из BOB обратно в Bitcoin. Мы работаем над гибридным решением: по умолчанию переходить на Ethereum в качестве DA, позволяя пользователям принудительно включать транзакции на BOB через специальную транзакцию на Bitcoin. Мы с нетерпением ждем возможности поделиться нашей работой в этом блоге.
tl;dr
Одно из основных свойств L2s заключается в том, что их состояние должно развиваться даже когда секвенсор отключен. L2s достигают этого, читая и записывая свое состояние из слоя доступности данных (DA), который может быть обновлен независимо от того, находится ли L2 в сети. Таким образом, пользователи могут принудительно включать свои транзакции, даже если сиквенсор находится в автономном режиме, или сиквенсор не принимает их транзакции непосредственно.
Для моста BitVM BOB это представляет собой интересную проблему. В настоящее время BOB использует блобы Ethereum EIP-4844 как свой уровень DA. Пользователи на Ethereum могут легко инициировать выводы обратно в Bitcoin через мост BitVM. Однако для этого требуется, чтобы у пользователей был ETH на Ethereum.
Этого недостаточно для нас: пользователи Bitcoin должны иметь только BTC на Bitcoin, чтобы осуществить вывод своих BTC из BOB обратно в Bitcoin. Мы работаем над гибридным решением: с использованием Ethereum в качестве DA по умолчанию, позволяя пользователям принудительно включать транзакции на BOB через специальную транзакцию на Bitcoin. Мы с радостью поделимся нашими продвижениями в этом блоге.
Процесс происхождениеэто довольно важно для L2: вся состояние L2 BOB должно быть построено из L1 и слоя DA. Это позволяет L2 наслаждаться той же самой устойчивостью к цензуре, что и слой DA, в нашем случае Ethereum.
Упрощенныйв rollups (конкретно в цепочках OP Stack) у нас есть два типа данных на уровне L1:
Если мы хотим, чтобы биткоин был в качестве DA-уровня, почему бы полностью не перейти к использованию биткоина исключительно в качестве DA-уровня? Ответ в основномстоимостьБиткоин имеет очень мало доступного хранилища (примерно 4 МБ примерно каждые 10 минут), и, таким образом, стоимость хранения высока.
Однако в нашем случае BOB все еще может использовать Ethereum в качестве своего «основного» слоя DA, где он размещает всю свою транзакционную информацию, но добавляет Bitcoin в качестве высокоцензурного запасного слоя, если Ethereum DA недоступен. По сути, Ethereum становится оптимистичным слоем DA, а Bitcoin становится дорогим, но устойчивым в крайнем случае.
Базовым решением является добавление биткойна в BOB как части конвейера производных, таким образом, чтобы BOB (и, в частности, «оп-узел») обрабатывал входы в этом порядке:
Давайте рассмотрим возможное решение для кодирования транзакций вывода Bitcoin в вынужденные транзакции BOB. Обратите внимание, что это все еще находится в стадии исследований, поэтому возможны изменения.
Для создания вынужденной транзакции вывода нам понадобятся три части:
Стек OPтранзакция депозитаимеет следующую структуру:
Принудительная транзакция вывода требует включения закодированной транзакции вывода в поле данных транзакции депозита. Это делается путем создания транзакции на BOB, которая инициирует вывод с BOB на Bitcoin и будет работать точно так же, как если бы транзакция была отправлена с Ethereum.
Мы можем затем сохранить (сжатую) версию транзакции принудительного вывода на Bitcoin, которая включает в себя все вышеперечисленные данные.
Поскольку объем данных для принудительной транзакции вывода больше, чем обычно должен храниться в выходных данных OP_RETURN, мы скорее всего будем использовать Taprootвывод для хранения данных.
Хотя легко определить транзакцию депозита (которая может включать вывод) на Ethereum, поскольку она отправляется на контракт OptimismPortal BOB, но не так легко определить транзакцию принудительного вывода на Bitcoin.
Сериализация данных: Транзакция принудительного вывода сериализуется с использованием скриптов Taproot в структуре «конверта». Они являются noops в сети Bitcoin и используются, например, для Ordinals. Мы настраиваем структуру под наши нужды.
Unset
OP_FALSE OP_IF
OP_PUSH "боб"
OP_1
OP_PUSH «транзакция»
OP_0
OP_PUSH $WITHDRAWAL_TRANSACTION_DATA
OP_ENDIF
Схема двухфазного подтверждения/раскрытия:
Как и с порядковыми числительными, пользователи должны будут отправить две транзакции на биткоин:
Это самая открытая проблема на данный момент, с двумя вариантами, которые в настоящее время находятся на рассмотрении:
Мы также экспериментируем с большим количеством идей, поэтому следите за обновлениями!
Любой может определить состояние BOB, просто проверив данные о Bitcoin и Ethereum:
Согласованность данных: Важно обеспечить согласованность данных между цепями Ethereum и Bitcoin, однако простое наличие данных транзакции на обеих цепях не гарантирует их действительности. Транзакции должны представлять собой действительные переходы состояний в соответствии с функцией перехода состояний роллапа, чтобы считаться законными. Для решения этой проблемы требуется внедрение логики валидации внутри op-узла (или других реализаций уровня консенсуса), которая сначала проверяет, приводит ли транзакция к действительному изменению состояния, прежде чем принимать ее.
Доказательства мошенничества и достоверность: Система доказательства мошенничества как для BitVM, так и для Ethereum, должна быть улучшена для обработки данных с обеих цепочек, что может сделать разрешение споров более сложным. Для решения этой проблемы необходимо точно учитывать возможные транзакции с биткоином и эфиром в рамках моста BitVM и расчетов BOB на Ethereum.
Увеличение хранения: Кроме того, узлы BOB в сети сталкиваются с увеличенными требованиями к хранению и пропускной способности, поскольку им необходимо обрабатывать и хранить данные из Bitcoin и Ethereum. Однако мы можем смягчить это, требуя, чтобы транзакции BOB, совершенные в Bitcoin, должны быть включены в блобы Ethereum с ссылкой на последние блоки Bitcoin. Таким образом, узлам нужно синхронизировать только недавние блоки Bitcoin.
Мы с нетерпением ждем возможности продвигать границы гибридных роллапов, объединяя безопасность биткойна с инновациями Ethereum. В данной конкретной проблеме нас интересует сочетание устойчивости биткойна к цензуре транзакций с BOB rollup стеком. Мы будем обновлять этот блог с более подробной информацией по мере наших успехов.
Пользователям Bitcoin должно быть достаточно BTC на Bitcoin, чтобы выполнить вывод их BTC из BOB обратно в Bitcoin. Мы работаем над гибридным решением: по умолчанию переходить на Ethereum в качестве DA, позволяя пользователям принудительно включать транзакции на BOB через специальную транзакцию на Bitcoin. Мы с нетерпением ждем возможности поделиться нашей работой в этом блоге.
tl;dr
Одно из основных свойств L2s заключается в том, что их состояние должно развиваться даже когда секвенсор отключен. L2s достигают этого, читая и записывая свое состояние из слоя доступности данных (DA), который может быть обновлен независимо от того, находится ли L2 в сети. Таким образом, пользователи могут принудительно включать свои транзакции, даже если сиквенсор находится в автономном режиме, или сиквенсор не принимает их транзакции непосредственно.
Для моста BitVM BOB это представляет собой интересную проблему. В настоящее время BOB использует блобы Ethereum EIP-4844 как свой уровень DA. Пользователи на Ethereum могут легко инициировать выводы обратно в Bitcoin через мост BitVM. Однако для этого требуется, чтобы у пользователей был ETH на Ethereum.
Этого недостаточно для нас: пользователи Bitcoin должны иметь только BTC на Bitcoin, чтобы осуществить вывод своих BTC из BOB обратно в Bitcoin. Мы работаем над гибридным решением: с использованием Ethereum в качестве DA по умолчанию, позволяя пользователям принудительно включать транзакции на BOB через специальную транзакцию на Bitcoin. Мы с радостью поделимся нашими продвижениями в этом блоге.
Процесс происхождениеэто довольно важно для L2: вся состояние L2 BOB должно быть построено из L1 и слоя DA. Это позволяет L2 наслаждаться той же самой устойчивостью к цензуре, что и слой DA, в нашем случае Ethereum.
Упрощенныйв rollups (конкретно в цепочках OP Stack) у нас есть два типа данных на уровне L1:
Если мы хотим, чтобы биткоин был в качестве DA-уровня, почему бы полностью не перейти к использованию биткоина исключительно в качестве DA-уровня? Ответ в основномстоимостьБиткоин имеет очень мало доступного хранилища (примерно 4 МБ примерно каждые 10 минут), и, таким образом, стоимость хранения высока.
Однако в нашем случае BOB все еще может использовать Ethereum в качестве своего «основного» слоя DA, где он размещает всю свою транзакционную информацию, но добавляет Bitcoin в качестве высокоцензурного запасного слоя, если Ethereum DA недоступен. По сути, Ethereum становится оптимистичным слоем DA, а Bitcoin становится дорогим, но устойчивым в крайнем случае.
Базовым решением является добавление биткойна в BOB как части конвейера производных, таким образом, чтобы BOB (и, в частности, «оп-узел») обрабатывал входы в этом порядке:
Давайте рассмотрим возможное решение для кодирования транзакций вывода Bitcoin в вынужденные транзакции BOB. Обратите внимание, что это все еще находится в стадии исследований, поэтому возможны изменения.
Для создания вынужденной транзакции вывода нам понадобятся три части:
Стек OPтранзакция депозитаимеет следующую структуру:
Принудительная транзакция вывода требует включения закодированной транзакции вывода в поле данных транзакции депозита. Это делается путем создания транзакции на BOB, которая инициирует вывод с BOB на Bitcoin и будет работать точно так же, как если бы транзакция была отправлена с Ethereum.
Мы можем затем сохранить (сжатую) версию транзакции принудительного вывода на Bitcoin, которая включает в себя все вышеперечисленные данные.
Поскольку объем данных для принудительной транзакции вывода больше, чем обычно должен храниться в выходных данных OP_RETURN, мы скорее всего будем использовать Taprootвывод для хранения данных.
Хотя легко определить транзакцию депозита (которая может включать вывод) на Ethereum, поскольку она отправляется на контракт OptimismPortal BOB, но не так легко определить транзакцию принудительного вывода на Bitcoin.
Сериализация данных: Транзакция принудительного вывода сериализуется с использованием скриптов Taproot в структуре «конверта». Они являются noops в сети Bitcoin и используются, например, для Ordinals. Мы настраиваем структуру под наши нужды.
Unset
OP_FALSE OP_IF
OP_PUSH "боб"
OP_1
OP_PUSH «транзакция»
OP_0
OP_PUSH $WITHDRAWAL_TRANSACTION_DATA
OP_ENDIF
Схема двухфазного подтверждения/раскрытия:
Как и с порядковыми числительными, пользователи должны будут отправить две транзакции на биткоин:
Это самая открытая проблема на данный момент, с двумя вариантами, которые в настоящее время находятся на рассмотрении:
Мы также экспериментируем с большим количеством идей, поэтому следите за обновлениями!
Любой может определить состояние BOB, просто проверив данные о Bitcoin и Ethereum:
Согласованность данных: Важно обеспечить согласованность данных между цепями Ethereum и Bitcoin, однако простое наличие данных транзакции на обеих цепях не гарантирует их действительности. Транзакции должны представлять собой действительные переходы состояний в соответствии с функцией перехода состояний роллапа, чтобы считаться законными. Для решения этой проблемы требуется внедрение логики валидации внутри op-узла (или других реализаций уровня консенсуса), которая сначала проверяет, приводит ли транзакция к действительному изменению состояния, прежде чем принимать ее.
Доказательства мошенничества и достоверность: Система доказательства мошенничества как для BitVM, так и для Ethereum, должна быть улучшена для обработки данных с обеих цепочек, что может сделать разрешение споров более сложным. Для решения этой проблемы необходимо точно учитывать возможные транзакции с биткоином и эфиром в рамках моста BitVM и расчетов BOB на Ethereum.
Увеличение хранения: Кроме того, узлы BOB в сети сталкиваются с увеличенными требованиями к хранению и пропускной способности, поскольку им необходимо обрабатывать и хранить данные из Bitcoin и Ethereum. Однако мы можем смягчить это, требуя, чтобы транзакции BOB, совершенные в Bitcoin, должны быть включены в блобы Ethereum с ссылкой на последние блоки Bitcoin. Таким образом, узлам нужно синхронизировать только недавние блоки Bitcoin.
Мы с нетерпением ждем возможности продвигать границы гибридных роллапов, объединяя безопасность биткойна с инновациями Ethereum. В данной конкретной проблеме нас интересует сочетание устойчивости биткойна к цензуре транзакций с BOB rollup стеком. Мы будем обновлять этот блог с более подробной информацией по мере наших успехов.