Автор: Rooch Network

 

Что такое сеть Роуча?

Rooch Network — это собственный уровень приложений Биткойна, основанный на комплексных решениях L2, предоставляющий пользователям и разработчикам платформу для запуска активов Биткойн и инфраструктуры приложений Биткойн.

Зачем вам нужна сеть Rooch?

В 2023 году в экосистеме Биткойн появились различные новые протоколы активов. Характеристики этих новых активов заключаются в том, что право собственности на активы регистрируется только в Биткойне, а их действительность проверяется вне сети. Их можно в совокупности называть активами на основе. проверка на стороне клиента. И какие перспективы для экосистемы Биткойн предвещают эти новые протоколы активов? В отрасли существуют разные точки зрения. Мы считаем, что новый протокол активов Биткойна знаменует собой новую парадигму построения экосистемы приложений.

Проверка активов на стороне клиента проверяет достоверность активов вне цепочки, поэтому можно разработать протокол межуровневой миграции активов, чтобы действительно реализовать миграцию активов из ончейна в оффчейн, имитируя «наличный» эффект в цифровом мире. мир. Таким образом, предоставление сценариев использования активов больше не ограничивается проблемой масштабируемости цепочки. Это новое решение для расширения, которое также предоставляет неограниченные возможности для приложений.

В то же время эта модель также указывает на возможную модель запуска экосистемы приложений. Сначала привлекайте пользователей с помощью ресурсов внутри приложения, создайте сообщество пользователей, а затем создавайте приложения в сообществе, чтобы решить проблему холодного запуска приложений.

Какая же инфраструктура необходима для поддержки этой модели?

  1. Во-первых, необходима масштабируемая среда приложений вне сети. Эта среда может не только предоставлять услуги проверки и масштабируемость для протоколов активов в цепочке, но также запускать приложения и предоставлять сценарии применения для активов.

  2. Во-вторых, для реализации миграции активов из ончейна в офчейн необходим протокол межуровневой миграции активов.

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

Это направление, которое Rooch Network хочет изучить и попробовать.

Технические решения и дорожная карта

Поддающийся проверке контейнер приложения (контейнер VApp)

Среда приложений вне сети должна сначала обеспечить проверяемость, что является необходимым условием для децентрализации. Мы называем проверяемое приложение сокращенно VApp.

Смарт-контракты обеспечивают проверяемость вычислений, а деревья состояний — проверяемость состояний. Комбинация представляет собой проверяемый контейнер приложения.

После года разработки команда Rooch завершила создание VApp-контейнера языка Move, который включает в себя следующие модули:

  1. MoveOS: включает MoveVM и составное дерево состояний, которое обеспечивает среду выполнения приложений и сохраняет состояние приложения для обеспечения проверяемости вычислений и состояний.

  2. Базовая библиотека и платформа Move: включая Move Stdlib, MoveOS Stdlib, RoochFramework, BitcoinMove и т. д., предоставляющие базовые функции, такие как абстракция учетных записей, определение активов и выполнение протокола Биткойн для приложений.

  3. Базовые инструменты разработки, интерфейс RPC, служба индексирования и SDK.

На основе этого контейнера приложений разработчики приложений могут практически реализовать большинство приложений Web2 с помощью языка Move и превратить их в проверяемые приложения. Руч также представил виртуальную машину WASM. Виртуальная машина Move управляет логикой приложения и управляет статусом. Виртуальная машина WASM предоставляет возможности расширения, позволяющие разработчикам повторно использовать существующие библиотеки языков программирования.

Рут к биткойнам

После того, как у нас есть контейнер VApp, нам нужно объединить его с Биткойном. Решение, принятое Роочом, состоит в том, чтобы напрямую выполнить все блоки в сети Биткойн в контейнере VApp, проверить UTXO и протокол расширения, прикрепленный к UTXO, преобразовать его в объект перемещения и предоставить Биткойну решение L2, содержащее статус L1.

Этот уровень смарт-контракта в основном предоставляет три возможности:

  1. Предоставьте подтверждение статуса биткойнов для экологических приложений биткойнов. Поскольку статус Биткойна, включая UTXO и Inscription, будет включен в дерево статусов, мы можем предоставить подтверждение статуса Биткойна для экологических приложений Биткойн, записав корень дерева статуса (Root) в сеть Биткойн. Можно доказать, владеет ли пользователь определенным UTXO или определенной надписью на определенной высоте блока.

  2. Обеспечьте масштабируемость протокола активов Bitcoin L1. Чтобы расширить новый протокол на основе существующего протокола активов, основной задачей является определение и реализация правил проверки нового протокола, чего можно достичь с помощью плагинов протокола смарт-контрактов. Таким образом, разработчикам не нужно создавать новые индексаторы.

  3. Обеспечьте возможность программирования всех данных и активов в Биткойне для создания сценариев применения.

После того, как мы получим полное состояние Биткойна, мы можем наложить сверху слой состояния L2, чтобы создать сценарии применения на основе данных и активов Биткойна. Есть несколько основных решений:

Расчеты с использованием биткойн-активов L1

Существует три основных режима: «атомный своп (открывается в новой вкладке)», «PSBT (открывается в новой вкладке)» и «платеж внутри цепочки запускает расчет вне цепочки». Эти режимы подходят для сценариев обмена или оплаты и могут быть рассчитаны непосредственно в биткойнах. Разработчики могут использовать смарт-контракты, предоставляемые Rooch, для отображения, сопоставления и упрощения расчетов с биткойнами.

Атомная привязка

Посредством атомарной привязки UTXO и Move Object активы L2 привязываются к активам Биткойна L1, так что право собственности на активы на L2 передается вместе с передачей активов Биткойна L1. Например, на L1 есть надпись, обозначающая участок земли. Затем постройте дом на L2, и право собственности будет привязано к земле на L1. Когда земля будет передана, дом также будет передан.

Производные активы

Получение новых активов с помощью активов Bitcoin L1 эквивалентно модели выпуска новых активов на основе существующих активов. Например, если вы владеете определенным активом L1, вы можете получить определенный актив L2.

Реквизит и идентификационные маркеры

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

Программирование биткойн-скриптов

Биткойн-скрипты и транзакции генерируются в смарт-контрактах, а обязательная сила (управление или ипотека), созданная L2, гарантирует, что пользователи должны подписать транзакцию и включить ее в блок L1, иначе они будут наказаны. Благодаря этой функции можно создавать внутрисетевые кошельки с мультиподписями и DAO на Биткойне, а также предоставлять дополнительные гарантии безопасности для мостов с мультиподписями.

Необходимо изучить больше моделей. Мы называем эту модель «составной» моделью построения приложения, в которой приложение накладывает слой состояния поверх состояния цепочки, чтобы обеспечить повторное использование существующих данных и активов. Подробные решения по «наращиваемому» режиму см. в разделе «Наращиваемый L2». Документацию по программированию и примеры Bitcoin и Move см. в разделе Расширение Bitcoin.

Протокол дерева распределенных состояний (DSTP)

Контейнеры VApp все независимы, как их объединить в сеть? И осознать совместимость статуса и активов? Это проблема, которую должны решить протоколы распределенного дерева состояний.

Идея протокола распределенного дерева состояний состоит в том, чтобы распределить различные поддеревья составного дерева состояний по узлам P2P-сети для достижения расширения и параллельных вычислений. Благодаря протоколу дерева распределенного состояния вся сеть может поддерживать неограниченное количество приложений и обеспечивать параллельное горизонтальное расширение, но в то же время она может совместно использовать данные и активы через глобальное состояние и обеспечивать совместимость приложений.

На основе «составной» модели состояний каждый узел VApp будет содержать состояние Биткойна и Руча, которые являются глобальными состояниями. Состояние приложения является поддеревом глобального дерева состояний и может существовать только на определенных узлах. Если транзакция только изменяет состояние приложения, не изменяя глобальное состояние, эту транзакцию не нужно транслировать в сеть. Приложению необходимо только регулярно синхронизировать свой собственный корень состояния с глобальным состоянием, что эквивалентно приложению. -основанный на осколках.

Это формирует распределенное дерево состояний с корнем в биткойнах и данными, разбросанными по каждому узлу приложения. Активы внутри приложения можно перемещать между деревьями состояний, а также взаимодействовать с активами в Биткойне.

Протокол дерева распределенных состояний также можно расширить в двух направлениях:

  1. Канал статуса Fusion. Канал состояний можно понимать как особое дерево состояний с жизненным циклом. Когда канал состояния нескольких участников открыт, создается дерево состояний, а когда канал состояния устанавливается, приложение может удалить состояние в дереве состояний или перенести его на верхний уровень. Этот сценарий в сочетании с P2P-сетями очень подходит для многопользовательских интерактивных приложений (игр) реального времени.

  2. Поддерживает деревья состояний в других форматах. Теоретически существующие деревья состояний можно монтировать как поддеревья в распределенные деревья состояний, например в хранилища git. Таким образом, приложение может напрямую читать файлы в репозитории git.

Протокол скачка активов

При расчете непосредственно на Bitcoin L1 по-прежнему возникают проблемы с пользовательским опытом, такие как высокие транзакционные издержки и длительное время ожидания подтверждения. Как перевести активы из Биткойна в L2, на данный момент в отрасли существует несколько решений:

  1. Модель для размещения перекрестных мостов. Эта модель широко используется. Как использовать Биткойн для обеспечения безопасности и децентрализации моста, Rooch будет сотрудничать со специализированными проектами межсетевых мостов, чтобы реализовать соединение активов и расширить возможности программирования, предоставляемые Rooch. .Безопасность моста.

  2. Неуправляемый режим: это основное направление, которое исследует Руч, например, цепочки состояний (откроется в новой вкладке).

Для активов нового протокола Биткойн мы попробуем протокол передачи активов. Если в будущем в Биткойне будет выпущено большое количество новых активов, потребуется протокол для миграции активов между сетью Биткойн и L2, чтобы уменьшить нагрузку на хранилище состояния Биткойна. В то же время новые активы на L2 также должны быть перенесены в Биткойн, чтобы получить более высокую безопасность и более широкие возможности обращения.

Основная идея протокола передачи активов

Активы, основанные на проверке на стороне клиента, такие как RGB/Ordinals, используют Биткойн для регистрации права собственности на актив, но его достоверность проверяется на стороне клиента. Если мы определим инструкцию перехода на уровне протокола, чтобы выразить миграцию активов с L1 на L2 или с L2 на L1, а затем клиент сможет проверять на обоих уровнях одновременно, мы сможем добиться межуровневой миграции активов. .

Этот протокол имеет несколько преимуществ по сравнению с текущей моделью моста:

  1. В мосте не будет собрано большое количество активов, можно избежать рисков концентрации и распределить риски модели миграции активов. Миграция и миграция активов инициируются пользователями. Клиент отслеживает право собственности. Пока проверено, что операция уничтожения во время миграции совпадает с операцией повторного выпуска во время миграции, активы будут в безопасности.

  2. Активы можно перемещать между различными сетями так же, как «наличные». Разделение сценариев хранения и применения активов может не только решить проблему взрыва состояния, но и решить проблему крупномасштабного выпуска новых активов.

  3. Эта модель требует, чтобы кошелек играл важную роль, а не просто нынешний «тупой» кошелек, который доверяет только RPC, но должен быть более «умным».

С этой целью команда Rooch разработала протокол SFT Bitseed(откроется в новой вкладке) на основе порядковых номеров. В будущем будет изучен протокол миграции активов на основе протокола Bitseed. Для получения более подробной информации см. протокол передачи активов. часть протокола проверки клиента.

Контрольный вопрос

Предыдущее описание решения не включает решения безопасности. В сети Rooch безопасность в основном включает в себя два аспекта:

  1. Решением безопасности на стороне приложения в основном является разрешение на обновление корня состояния приложения.

  2. Для решений безопасности на стороне клиента клиент должен иметь возможности государственной проверки.

Безопасность на стороне приложения должна быть настроена приложением в соответствии со сценарием и этапом разработки. Существует несколько основных вариантов:

  1. Узел ротации временных интервалов на основе биткойнов + уровень доступности данных + защита от мошенничества: переключение между несколькими узлами достигается за счет ротации временных интервалов, чтобы обеспечить высокую доступность и децентрализацию приложения. Для наказания злоумышленных узлов используется доказательство мошенничества. Это решение, которое примет Rooch Network, и мы постараемся работать с нашими партнерами, чтобы изучить, как использовать Биткойн в качестве источника безопасности.

  2. Узел PoA + уровень доступности данных: этот тип приложения может обеспечить проверку данных, и любой может запустить независимый узел для проверки данных.

  3. Узел PoA: этот тип приложения может предоставлять подтверждение статуса внешнему миру, а кошельки пользователей могут проверять свои собственные данные. Однако, поскольку уровень доступности данных для обеспечения доступности транзакций отсутствует, существует риск сокрытия данных. Он может служить промежуточным переходом от приложений Web2 к приложениям Web3.

  4. Мультиподпись всех участников: подходит для приложений государственного канала.

Проверка активов на стороне клиента требует, чтобы кошелек больше не полностью доверял узлу RPC, но требует, чтобы кошелек имел определенные возможности проверки, которые можно назвать умным кошельком.

  1. Клиентский кошелек должен иметь возможность доступа к сети P2P, обнаруживать узлы приложения в сети и проверять корень дерева состояний приложения с помощью механизма случайной выборки. Он даже может локально запускать виртуальную машину со смарт-контрактом для проверки своей собственной. транзакции.

  2. Клиентский кошелек должен иметь возможность отслеживать миграцию активов или, по крайней мере, проверять достоверность миграции активов.

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

поэтапный маршрут

Исследования и разработки контейнера Rooch VApp вскоре выпустят новую стабильную версию, и на основе этой версии мы запустим сеть Xianxian компании Rooch Network.

На Xianxing.com мы сначала попробуем разработать межуровневый протокол активов, который в основном включает в себя два направления:

  1. С помощью модели самоблокирующихся производных активов выпускается новый актив в рамках цепочки и предпринимается попытка миграции из оффчейна в ончейн.

  2. Попробуйте перенести активы Bitseed из ончейна в оффчейн. Включает активы NFT и FT, выпущенные с использованием стандарта Bitseed SFT.

В то же время мы будем пробовать игры на основе биткойн-активов, а также поощрять разработчиков создавать игры и приложения, создавать экосистему приложений модели VApp и распространять дополнительные активы токенов основной сети Rooch Network среди пользователей через игры и приложения, которые могут быть будет использоваться в будущих токенах основной сети Exchange.

Затем мы получим доступ к сети P2P, получим доступ к уровню доступности данных, добьемся децентрализации узлов, найдем партнеров для совместной разработки решений безопасности на основе биткойнов и обновим сеть Xianxing до основной сети. Подробную карту маршрута смотрите в «Дорожной карте».

Подведем итог

В этой статье представлены схема и цели сети Руча, а также способы ее проверки. Это не полный технический документ.

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

Конечно, до реализации этого проекта еще предстоит решить много проблем, но мы считаем, что многие технические решения разрабатываются на основе практики, а не планируются и проектируются. Мы подобны исследователям в эпоху Великих географических открытий. Обычно мы знаем направление и ценность сокровищ, но нужно найти и изучить конкретный путь. Мы можем только сначала сделать некоторые предположения, затем разработать минимальные протоколы и продукты, проверить их на рынке, решить проблемы, скорректировать направление и продолжить цикл. В конце концов, мы найдем One Piece.