Forklog
2025-01-10 13:26:58

Tycho: как работает новый DAG-протокол от Broxus

В ноябре 2024 года компания Broxus запустила публичный тестнет Tycho ― протокола для создания TVM-сетей первого и второго уровней на базе технологии направленного ациклического графа (directed acyclic graph, DAG). Broxus является одним из ключевых разработчиков в экосистеме блокчейна Everscale (ранее Free TON). Вместе с командой проекта рассказываем о работе протокола и том, как присоединиться к тестированию Tycho. История создания Tycho В третьем квартале 2023 года команда Broxus сосредоточилась на исследовании проблем проектирования TVM-сетей, в частности, вопросе быстрой финализации (fast finality). «Каждая транзакция в блокчейне не выполняется мгновенно. При отправке токенов на другой адрес ее сначала должны подтвердить майнеры (в сетях Proof-of-Work) или валидатораы (Proof-of-Stake) наряду с другими переводами и дополнительными данными. После подтверждения транзакция включается в следующий блок, становясь неотъемлемой частью распределенного реестра. Такое состояние называется финализацией», ― комментируют представители Broxus. В рамках исследования эксперты изучали современные DAG-протоколы вроде Mysticeti, Narwhal и Tusk. На основе полученных данных команда Broxus предложила модель протокола с быстрой финализацией пользовательской операции. Он включает три компонента: консенсус. Получает сообщения от пользователей и согласовывает их порядок в сети; коллатор. Выпускает блоки; валидатор. Создает и распространяет подписи для мастер-блоков. Tycho стал реализацией этого предложения. «В случае успеха Tycho сможет значительно увеличить пропускную способность TVM-блокчейнов. Протокол обеспечит финализацию транзакций менее чем за три секунды при сохранении стабильности сети», ― комментируют в Broxus. Ниже мы более подробно рассмотрим решения, которые предлагает Tycho. Проблемы консенсуса Как правило, консенсусы в блокчейнах функционируют не на уровне мемпула, а на уровне их выполнения. «Например, в классическом BFT-консенсусе это работает так: инициатор предлагает блок другим участникам, а те его проверяют. Если две трети участников подтверждают корректность блока, он принимается как валидный», ― комментируют представители Broxus. Этот подход удваивает время, необходимое для обработки транзакций в блокчейне. На практике задержки еще больше из-за передачи данных по сети. Кроме того, возникает проблема неравномерного распределения нагрузки: пока инициатор формирует блок, остальные участники бездействуют. Никто из них не знает заранее, когда станет инициатором, но каждый должен быть готов взять на себя эту роль в любой момент. Это приводит к тому, что значительная часть ресурсов сети остается невостребованной. Также правила выбора транзакций в мемпуле и включения их в блоки полностью зависят от инициатора. Это открывает возможности для цензурирования или манипуляций вроде MEV: инициатор использует свое положение для получения выгоды — например, совершает операции на децентрализованной бирже (DEX) с преимуществом для себя. Остальные участники сети не могут это проконтролировать, поскольку для них важна лишь корректность транзакции. «Большую часть проблем можно решить с помощью DAG-мемпула. Эта идея была впервые предложена в рамках проекта Libra, а затем развита в блокчейнах Aptos и Sui», ― отмечают в Broxus. Вторая фундаментальная проблема — параллельность вычислений. В большинстве блокчейнов используется синхронная архитектура, при которой возникают блокировки в точках пересечения транзакций. Чтобы убедиться в отсутствии конфликта, их необходимо выполнить по очереди. Если же он обнаруживается, приходится повторно обрабатывать обе транзакции. Разработчики TVM-блокчейнов решают эту с помощью акторной модели — подхода к параллельным вычислениям, где основным примитивом выступает актор. Она обеспечивает эффективное распределение вычислительных задач, повышая масштабируемость и устойчивость системы. Каждый смарт-контракт ― это отдельный актор, который выполняет свои задачи изолированно. У него есть: методы для определения логики работы; локальное хранилище для данных; способность к взаимодействию, включая асинхронные вызовы других смарт-контрактов и создание новых акторов. «Они обмениваются сообщениями без ожидания ответа. Например, в процессе работы один контракт может отправлять транзакции другим контрактам. Эти вызовы выполняются параллельно, что исключает конфликты и задержки. Протокол обеспечивает гарантированную доставку и выполнение всех сообщений», ― комментируют в Broxus. Консенсус Tycho Главное отличие Tycho от других протоколов заключается в том, что консенсус переносится на входящие сообщения. Это позволяет значительно снизить нагрузку на сеть, обеспечивая более высокую скорость работы. «Пользователи отправляют валидаторам сообщения, которые публикуются в протоколе консенсуса. Каждые 1,2 секунды Tycho формирует согласованную очередь сообщений. Консенсус достигается, если более двух третей валидаторов работают честно. Все валидаторы имеют равные права в протоколе, независимо от размера их стейка», ― утверждает команда Broxus. Полученную очередь сообщений валидаторы очищают от дублей и передают в коллатор. Коллатор Tycho Коллатор отвечает за: выполнение сообщений; выпуск блоков; обновление состояния блокчейна. Для работы коллатору требуется очередь сообщений от протокола консенсуса, а также информация о текущем состоянии блокчейна. «Коллатор не согласовывает свою работу с другими нодами. Благодаря этому он может выпускать блоки непрерывно, эффективно используя вычислительные мощности сервера», ― отмечают в Broxus. В традиционных блокчейн-протоколах процесс выглядит так: Коллатор создает блок и распространяет его по сети. Валидаторы проверяют блок и подписывают его. Новый блок создается только после завершения этого цикла. В Tycho все ноды одновременно производят идентичные блоки. Они не передаются по сети: генерация следующего начинается сразу после завершения предыдущего. Такой подход исключает задержки между выпуском блоков и оптимизирует использование вычислительных ресурсов. Коллатор параллельно создает два типа блоков: шард-блоки. Содержат результаты выполнения транзакций; мастер-блоки. Могут содержать транзакции, быть помеченными как ключевые и использоваться для синхронизации новых нод. Финальность сети достигается при выпуске мастер-блока каждые 2,5 секунды. Процесс создания блока в Tycho: Коллатор обрабатывает входящие сообщения, создавая транзакции. Выполнение транзакций происходит параллельно с соблюдением порядка сообщений. При достижении лимита блок выпускается. После этого сразу начинается создание следующего. Мастер-блоки передаются на валидацию. Валидация в Tycho В Tycho нет отдельной роли валидатора, так как все ноды создают одинаковый блок в одно и то же время. Процесс верификации правильности работы блокчейна называется валидацией. Этот компонент проверяет, что хеш мастер-блока совпадает у более чем 2/3 нод. После создания мастер-блока ноды обмениваются подписями хеша. «Эта небольшая деталь содержит важную логику: нода не может уклоняться от работы — получить хеш от соседней ноды, подписать его и при этом не участвовать в создании блока, чтобы сэкономить вычислительные ресурсы. Хеш остается закрытым, пока более 2/3 нод не завершат процесс создания блока, самостоятельно получив его хеш», ― отмечают в Broxus. Задачи компонента: убедиться, что ноды получили одинаковое состояние сети после создания блоков; после сбора подписей передать блоки клиентам сети. Результаты тестирования Tycho После старта публичного тестнета в ноябре и подключения нод независимых валидаторов Broxus запустила несколько децентрализованных приложений. «Мы развернули DEX FlatQube и NFT-маркетплейс Tokstok, а также создали Telegram-бота, который выдает тестовые токены. Для поддержки тестнета был доработан кошелек SparX, что позволило пользователям проводить привычные операции в сети», ― комментируют в Broxus. Разработчики запустили нагрузочные тесты с диапазоном от 20 до 20 000 TPS (со средним значением 2000 TPS). По их словам, такая интенсивность поддерживается почти весь период работы тестнета, при этом пользователи DEX и NFT-маркетплейса не испытывают дискомфорта. С начала публичного тестирования команда Broxus выпустила пять релизов, включая: оптимизацию производительности; доработку механизма синхронизации нод под большой нагрузкой; новый механизм расчета импорта данных из консенсуса; стабилизацию процесса ротации валидаторов. По словам разработчиков, эти изменения сделали тестнет более стабильным, обеспечивая комфортную работу пользователей под высокой нагрузкой. Что делать в тестнете Для участия в тестнете нужно: установить кошелек SparX; в списке сетей выбрать Tycho Testnet; в Telegram-боте Tycho Testnet Giver ввести команду /give и адрес кошелька. Бот начислит 1000 TYCHO. Подробная инструкция ― в блоге Broxus. Кроме TYCHO в тестнете есть и другие активы. Пользователи могут торговать: токенами USDT (ttUSDT), USDC (ttUSDC), DAI (ttDAI) и Wrapped Tycho (WTYCHO) и добавлять ликвидность на DEX FlatQube; NFT на маркетплейсе Tokstock. В Broxus подчеркивают, что все взаимозаменяемые и невзаимозаменяемые активы в тестнете Tycho не имеют ценности. Выводы Tycho ― новый протокол для TVM-блокчейнов, призванный обеспечить высокую производительность и эффективное использование ресурсов в L1/L2-сетях с помощью DAG-консенсуса. С сентября 2024 года протокол проходит тестирование. После его ожидаемого завершения в 2025 году Tycho могут внедрить проекты вроде Everscale и Venom.

获取加密通讯
阅读免责声明 : 此处提供的所有内容我们的网站,超链接网站,相关应用程序,论坛,博客,社交媒体帐户和其他平台(“网站”)仅供您提供一般信息,从第三方采购。 我们不对与我们的内容有任何形式的保证,包括但不限于准确性和更新性。 我们提供的内容中没有任何内容构成财务建议,法律建议或任何其他形式的建议,以满足您对任何目的的特定依赖。 任何使用或依赖我们的内容完全由您自行承担风险和自由裁量权。 在依赖它们之前,您应该进行自己的研究,审查,分析和验证我们的内容。 交易是一项高风险的活动,可能导致重大损失,因此请在做出任何决定之前咨询您的财务顾问。 我们网站上的任何内容均不构成招揽或要约