Что такое Evmos?

AlexM
4 min readOct 13, 2021

--

Evmos — это масштабируемый блокчейн с высокой пропускной способностью, полностью совместимый с Ethereum. Он построен с использованием Cosmos SDK, который в свою очередь работает поверх механизма консенсуса Tendermint Core.

Evmos позволяет запускать классический Ethereum в качестве блокчейна для конкретного приложения Cosmos. Это позволяет разработчикам иметь все имеющиеся у Ethereum функции, в то же время получая все преимущества реализации Proof-Of-Stake Tendermint. Кроме того, поскольку Evmos построен поверх Cosmos SDK, он сможет обмениваться с остальной частью экосистемы Cosmos через протокол связи между блокчейнами (IBC).

Ключевые функции Evmos:

  • Совместимость с Web 3 и EVM
  • Высокая пропускная способность, благодаря ядру Tendermint
  • Горизонтальная масштабируемость при помощи IBC
  • Быстрые транзакции

Это становится возможно за счет:

  • Реализации интерфейса блокчейна приложений Tendermint Core для управления блокчейном
  • Использования модулей и других механизмов, реализованных в Cosmos SDK
  • Использования библиотеки geth, чтобы избежать повторного использования кода и повысить удобство обслуживания.
  • Предоставления полностью совместимого слоя Web 3 JSON-RPC для взаимодействия с существующими клиентами Ethereum и инструментами, которые мы все так любим(Metamask, Remix, Truffle и т.д)

Совокупность этих функций позволяет разработчикам использовать существующие инструменты и программное обеспечение экосистемы Ethereum для беспрепятственного развертывания смарт-контрактов, которые взаимодействуют с остальной частью экосистемы Cosmos!

Далее поговорим об архитектуре Evmos.

Ядро Tendermint и интерфейс приложений блокчейна(ABCI)

Tendermint состоит из двух основных технических компонентов: механизма консенсуса блокчейна и общего интерфейса приложения. Механизм консенсуса, называемый ядром Tendermint, гарантирует, что одни и те же транзакции записываются на каждом устройстве в одном и том же порядке. Интерфейс приложений, называемый Application Blockchain Interface(ABCI), позволяет обрабатывать транзакции на любом языке программирования, что еще больше расширяет возможности разработчиков.

Tendermint стал механизмом консенсуса блокчейна общего назначения, который может принимать любые состояния приложений. Поскольку Tendermint может копировать произвольные приложения, его можно использовать в качестве замены plug-and-play для механизмов консенсуса других блокчейнов. Evmos является примером приложения ABCI, заменяющего PoW Ethereum при помощи Tendermint.

Другим примером приложения, построенного на Tendermint, является сеть Cosmos.

EVM Модуль

Evmos обеспечивает совместимость с EVM за счет реализации различных компонентов, которые вместе поддерживают все переходы состояний виртуальной машины, обеспечивая при этом те же возможности для разработчиков, что и Ethereum:

  • Формат транзакций Ethereum в виде интерфейса Cosmos SDK Tx и Msg
  • Кривая secp256k1 эфириума для паролей Cosmos
  • Интерфейс StateDB для обновления состояния и запросов
  • JSON-RPC клиент для взаимодействия с EVM

Cosmos SDK

Evmos обеспечивает все преимущества пакета Cosmos SDK .

Client Servers

Клиент Evmos поддерживает как gRPC endpoints SDK, так и Ethereum’s JSON-RPC

Cosmos gRPC и Tendermint RPC

Evmos предоставляет gRPC endpoints (и REST) для всех интегрированных модулей Cosmos-SDK. Это облегчает кошелькам и валидаторам взаимодействие с логикой подтверждения ставки, собственными транзакциями и запросами Cosmos

Ethereum JSON-RPC server

Evmos также поддерживает большинство стандартных API web3 JSON-RPC для подключения к существующим инструментам web3.

Чтобы подключиться к серверу JSON-PRC, запустите узел с флагом — json-rpc.enable=true и определите пространства имен, которые вы хотели бы запустить, используя флаг — evm.rpc.api (например, “txpool,eth,web3,net,personal”. Затем вы можете указать любой инструмент разработки Ethereum на http://localhost:8545 или любой порт, который вы выберете с флагом адреса прослушивания ( — json-rpc.address).

Цепь Evmos

Блокчейн Evmos предоставляет разработчикам Ethereum возможность развертывать свои смарт-контракты в Evmos EVM и получать преимущества Proof-of-Stake (POS). Разработчики также получат выгоду от высоконадежных клиентов, которые могут использовать тестовые сети для тестирования и развертывания своих контрактов.

Evmos также будет предлагать встроенные функции взаимодействия с другими цепочками Cosmos и BFT с помощью IBC. Разработчики также могут извлечь выгоду из использования мостов для обеспечения взаимодействия между основной сетью Ethereum и Evmos.

Зависимость модуля EVM

Модуль EVM, находящийся внутри Evmos, может использоваться отдельно, как отдельный автономный модуль. Это может быть добавлено в качестве зависимости к любой цепи Cosmos, что позволит поддерживать смарт-контракты.

Импорт модуля EVM также может включать такие варианты использования, как цепи подтверждения полномочий для корпоративных проектов. Каждая цепь в Cosmos представляет собой блокчейн для конкретного приложения, настроенный для бизнес-логики, находящейся в одном приложении. Таким образом, использование предопределенного набора валидаторов и модуля EVM в качестве зависимости обеспечивает высокую скорость создания проектов, совместимость, а также Proof-of-Stake (PoS) консенсус.

Компромиссы

Любой из вышеперечисленных вариантов позволит быстро завершить работу, используя механизм консенсуса PoS. Использование модуля EVM в качестве зависимости потребует импорта EVM и поддержания цепи(включая наборы валидаторов, обновления/соответствие кода, участие сообщества, стимулы и т.д.), что приведет к большим затратам. Преимущество импорта модуля EVM в ваши цепи заключается в том, что он позволяет осуществлять детальный контроль над сетью и конкретными конфигурациями/функциями цепи, которые могут быть недоступны в цепочке Evmos, например, при разработке или импорте стороннего модуля.

Использование цепочки Evmos позволит напрямую внедрять смарт-контракты в сеть Evmos. Использование клиента Evmos перенесет обслуживание цепи на сеть Evmos и позволит участвовать в более зрелой блокчейн-цепочке. Клиент Evmos также предложит совместимость с IBC, которая обеспечивает совместимость между различными сетями.

Мое мнение о проекте

Взяв в учет все написанное выше, можно понять, что Evmos — один из самых перспективных проектов, находящихся на данный момент в тестировке. Он соединит Ethereum и Cosmos SDK, а также упростит разработку для новых проектов в будущем. Я считаю, что стоит, как минимум, активно следить за проектом.

Спасибо за прочтение

При поддержке телеграмм-канала @HamsterTears

--

--

No responses yet