Что такое Monad?
Monad - это высокопроизводительная блокчейн-платформа, которая разработана как решение для масштабирования уровня 1 (L1) и совместимо с виртуальной машиной Ethereum (EVM). Платформа смарт-контрактов обеспечивает полную совместимость с EVM, уделяя особое внимание масштабируемости и децентрализации. Monad утверждает, что его пропускная способность составляет 10 000 транзакций в секунду (tps).
Технические ограничения Ethereum, пионерской платформы смарт-контрактов, и других существующих инфраструктур, таких как Solana, были одними из самых серьезных проблем в блокчейн-индустрии. Следовательно, за последние несколько лет потребность в масштабируемых и децентрализованных блокчейн-решениях стала чрезвычайно актуальной. Для решения этих проблем Monad обещает повысить эффективность благодаря высокой пропускной способности - 10 000 транзакций в секунду.
Команда, стоящая за Monad
Блокчейн Monad был разработан Monad Labs, группой профессионалов, объединенной соучредителями Кеоне Хоном (генеральный директор), Джеймсом Хансейкером (технический директор) и Юнис Джиарта (исполнительный директор). Команда имеет опыт в программировании с низкой задержкой и проектировании распределенных систем и утверждает, что стремится к более эффективному будущему в области блокчейн-технологий.
EVM-масштабирование
Виртуальная машина Ethereum (EVM) - это компонент Ethereum Network, который отвечает за выполнение смарт-контрактов. EVM сыграла важную роль в развитии децентрализованных приложений (dApps) и децентрализованных финансов (DeFi). Однако растущая популярность DeFi и постоянное расширение dApps привели к возникновению серьезных проблем для EVM, особенно с точки зрения масштабируемости.
Одна из самых больших проблем, связанных с масштабированием EVM, заключается в том, что она является однопоточной. Это означает, что все транзакции выполняются последовательно. Это ограничивает количество транзакций, которые могут быть обработаны в течение одного периода времени, а также увеличивает время выполнения.
На момент написания статьи было предложено два решения для масштабирования EVM: сегментирование и параллельная обработка.
- Сегментирование (или шардинг) предполагает разделение более крупной блокчейн-сети на несколько сегментов, что увеличивает емкость хранилища и повышает производительность. Каждый сегмент содержит набор смарт-контрактов и балансов на счетах, где узлы назначаются отдельным сегментам для проверки транзакций и операций. Вместо того, чтобы каждый узел отвечал за каждую транзакцию в сети, узлы теперь распределены по определенным сегментам, объединяясь лишь для согласования универсального состояния уровня 1.
- Параллельная обработка также известна как распараллеливание или параллельное выполнение транзакций. Благодаря структурированию сети для одновременной обработки транзакций вместо последовательной обработки транзакций одновременно может быть проверено большее количество транзакций. Monad использует параллельную обработку, предлагая разработчикам высокопроизводительный уровень 1, совместимый с EVM, что упрощает перенос их dApps на другой сервер.
Как работает Monad?
Monad способен преодолеть ограничения виртуальной машины Ethereum, сохранив при этом ее желаемые качества, благодаря сочетанию различных инновационных технологических механизмов. Например, блокчейн обеспечивает полную совместимость с байт-кодом для EVM, что позволяет переносить существующие приложения с Ethereum на Monad без изменения кода. Также Monad оснащен полной совместимостью с Ethereum RPC (удаленный вызов процедур), что облегчает использование инфраструктур, таких как кошельки с самообслуживанием и исследователи блокчейнов.
В частности, Monad обеспечивает оптимизацию в четырех основных областях, включая:
1. Параллельное выполнение
Большинство существующих блокчейнов, совместимых с EVM, включая Ethereum, Avalanche и Binance Smart Chain (BSC), обрабатывают транзакции в последовательном порядке. Monad, с другой стороны, обеспечивает масштабируемость за счет параллельного выполнения транзакций.
Однако Monad выполняет параллельное выполнение транзакций, сохраняя совместимость с Ethereum, за счет аналогичной структуры своих блоков, то есть линейно упорядоченного набора транзакций. Это гарантирует, что, несмотря на различную механику выполнения, результаты транзакций в Monad остаются идентичными результатам в Ethereum.
Как правило, блокчейн сначала должен определить и подтвердить, какие транзакции могут обрабатываться независимо, прежде чем выполнять их параллельно. Однако Monad использует оптимистичное выполнение, когда блокчейн предполагает, что все транзакции могут выполняться независимо, и пытается обрабатывать их одновременно.
Тем не менее, при одновременной обработке двух транзакций, зависящих друг от друга, может произойти некорректное выполнение. Например, для одной из транзакций может потребоваться вывод другой транзакции, которая соответствующим образом называется предварительным условием в качестве собственных входных данных. Monad устраняет это, повторно выполняя неправильно выполненную транзакцию с «обновленными» данными из своей предварительной транзакции.
Наконец, Monad использует статический анализатор кода для прогнозирования транзакций, зависящих друг от друга. Это помогло бы сэкономить время, которое обычно тратится на попытки выполнить транзакции, имеющие предварительные условия.
2. Отложенное выполнение
Еще одним важным механизмом блокчейна Monad является то, что выполнение транзакций отделено от процесса согласования. Это означает, что транзакции не должны обрабатываться до того, как узлы блокчейна достигнут консенсуса относительно порядка следования транзакций в блоке - в отличие от Ethereum Network.
Механизм исполнения в Ethereum разработан таким образом, что все узлы должны обрабатывать транзакции до достижения консенсуса - и все это в течение ограниченного периода времени. Это также требует установления консервативных ограничений на вычислительную нагрузку для поддержания надежности и производительности сети.
Monad позволяет узлам определять и согласовывать состояние блока до выполнения транзакций внутри блока. Таким образом, выполнение транзакции не задерживает процесс согласования. В конечном счете, этот механизм «отложенного исполнения» помогает повысить эффективность и масштабируемость сети, позволяя ей обрабатывать больше транзакций за более короткий промежуток времени.
3. MonadBFT
MonadBFT, оптимизированная производная алгоритма HotStuff, является высокопроизводительным механизмом согласования в блокчейне Monad. Он предназначен для оптимизации взаимодействия между проверяющими узлами и лидерами блоков, сокращения времени согласования и повышения эффективности.
Чтобы достичь консенсуса по новому блоку с помощью MonadBFT (византийская отказоустойчивость), руководитель блока отправляет проверяющим узлам подтверждение того, что предыдущий блок действителен. Затем узлы напрямую отправляют подписанное сообщение «да» следующему лидеру, утверждая блок и сигнализируя о готовности двигаться дальше.
В случае, если время ожидания лидера блока истекает, а узлы не могут достичь консенсуса, MonadBFT запускает резервный механизм. Это вторичный процесс обмена данными, который занимает больше времени и требует взаимной связи между всеми проверяющими. Однако этот резервный механизм гарантирует, что блокчейн Monad все равно достигнет консенсуса, независимо от задержек или сбоев.
4. MonadDb
MonadDb - это пользовательская сетевая база данных для хранения состояния блокчейна Monad. Большинство клиентов Ethereum используют структуры данных, отличные от структуры Merkle Patricia Trie от Ethereum, что приводит к неоптимальному решению для хранения, ведь одна структура данных должна быть встроена в другую.
С учетом того, что Monad выполняет транзакции параллельно, несколько транзакций должны иметь возможность одновременно считывать и записывать данные в базу данных. Для решения этой проблемы MonadDb использует структуру данных Patricia Trie как на диске, так и в памяти, которая обеспечивает надлежащую поддержку асинхронного ввода-вывода для базы данных.
Это позволяет блокчейну выполнять несколько транзакций параллельно и выполнять работу асинхронно.
Преимущества Monad
Как уже упоминалось, Monad стремится заполнить пробелы, оставленные другими блокчейнами, совместимыми с EVM. Ниже приведены некоторые из преимуществ, предлагаемых блокчейном Monad.
-
Совместимость с EVM
Одной из отличительных особенностей Monad является его полная совместимость с виртуальной машиной Ethereum. Эта возможность позволяет разработчикам переносить свои существующие приложения с Ethereum на Monad без каких-либо изменений кода, избегая при этом дополнительных затрат ресурсов и времени на разработку.
Кроме того, полная совместимость с EVM облегчает интеграцию широкого спектра инструментов, библиотек и инфраструктур на базе Ethereum в блокчейн Monad. Эта совместимость предлагает масштабируемое решение для существующих проектов, которые стремятся повысить свою эффективность, а также возможность использовать обширные ресурсы Ethereum.
-
Более низкие комиссии и быстрые транзакции
Monad разработан для решения проблем масштабируемости, связанных с большинством блокчейнов, совместимых с EVM. Monad обеспечивает высокую пропускную способность за счет использования комбинации различных механизмов, таких как параллельное выполнение и отложенное выполнение, что позволяет обрабатывать больше транзакций за меньшее время.
Такое снижение загруженности сети приводит к сокращению времени транзакций, тем самым повышая общую эффективность блокчейна. Повышенная эффективность также способствует снижению комиссионных за транзакции, наблюдаемых в Monad, что делает его более экономичным вариантом по сравнению с Ethereum.
Потенциальные риски Monad
Несмотря на то, что блокчейн Monad обладает многочисленными преимуществами, он также имеет некоторые потенциальные недостатки.
-
Техническая сложность
Действительно, Monad предлагает выдающиеся преимущества с точки зрения масштабируемости и общей производительности. Однако продвинутый характер его механики повышает уровень технической сложности, который может оказаться потенциально сложным как для конечных пользователей, так и для разработчиков.
Из-за технической сложности стоимость разработки и обслуживания приложений и инфраструктур на Monad может быть очень низкой, особенно для разработчиков небольших проектов и команд. Кроме того, сложности механизмов блокчейна, такие как параллельное выполнение, могут привести к непредвиденным уязвимостям и рискам.
-
Проблемы централизации
Другой потенциальной проблемой, связанной с блокчейном Monad, является проблема централизации. В частности, участие венчурного капитала (VC) в проекте добавляет интересную перспективу к обсуждению проблемы централизации. Недавно Monad Labs успешно завершила раунд финансирования в размере 225 миллионов долларов, организованный Paradigm, при участии других компаний, таких как Electric Capital, Coinbase Ventures, GSR Ventures и так далее.
Например, инвесторы часто получают значительную часть токенов блокчейна в качестве поощрения за свои инвестиции. Например, проект Celestia зарезервировал более 35% своих собственных токенов (TIA) для своих инвесторов. Поскольку лишь несколько организаций контролируют значительное количество токенов, может возникнуть дисбаланс в процессах управления и принятия решений в сети.
Такое непропорциональное распределение токенов может привести к централизации власти, когда крупные инвесторы смогут влиять на модернизацию сети, изменения политики и другие жизненно важные решения.
Monad против других блокчейнов, совместимых с EVM
В мире существует множество других блокчейнов, совместимых с EVM, включая BSC, Polygon и Avalanche. рассмотрим Monad и то, как он соотносится с существующими в этом пространстве.
Особенность | Ethereum | Monad | BNB Smart Chain (BSC) | Polygon | Avalanche |
---|---|---|---|---|---|
Механизм консенсуса | Proof of Stake | MonadBFT | Proof of Staked | Proof of Stake Authority | Avalanche Consensus |
Подход к масштабируемости | Layer 1 | Layer 1 | Layer 1 | Layer 2/Sidechain | Layer 1/Subnets |
Скорость | ~ 15 т/с | ~ 10 000 т/с (прогнозируется) | 60 - 100 т/с | ~ 7000 т/с | ~ 4500 т/с |
Совместимость с EVM | Да | Да | Да | Да | Да |
Плата за газ | Переменная, часто высокая | Низкая | Низкая | Низкая | Низкая |
Инструменты разработчика | Обширный | Обширный | Обширный | Обширный | Обширный |
Примечательные особенности | Децентрализация и механизмы исполнения с высоким уровнем безопасности | ориентация на масштабируемость | Низкие комиссионные | Масштабирование уровня 2, zk-роллапы | Инфраструктура подсети |
Вывод
Monad демонстрирует значительный потенциал для позитивного изменения траектории развития технологии блокчейн. Благодаря масштабируемой и эффективной платформе блокчейн может стать домом для широкого круга разработчиков и проектов, которые стремятся преодолеть ограничения существующих блокчейн-сетей. В то же время постоянное развитие и совершенствование Monad указывает на способность этого проекта стимулировать инновации в индустрии децентрализованных финансов.