Introdução

O que é Ethermint?

Ethermint é uma plataforma blockchain que combina elementos das redes Ethereum e Cosmos. Ela foi projetada para fornecer compatibilidade com a Ethereum Virtual Machine (EVM) enquanto aproveita a escalabilidade e outras características da plataforma Cosmos.

Ethermint 2.0: An Ethereum Scaling Solution by Cosmos - Speaker Deck

A Ethereum Virtual Machine é a máquina virtual que executa os contratos inteligentes na rede Ethereum. Ethermint permite que os desenvolvedores criem e execute contratos inteligentes compatíveis com a EVM em sua rede, ao mesmo tempo em que se beneficia da escalabilidade e das capacidades de interoperabilidade da plataforma Cosmos.

Resumidamente permite que contratos que sejam executados na Ethereum ou EVMs (Ethereum Virtual Machine) sejam executados na Cosmos por meio do protocolo da Ethermint

Características

Principais recursos da Ethermint:

  • Alto rendimento via Tendermint Core

  • Horizontal scalability via IBC

  • Transações rápidas

  • Hard Spoon

    Um "hard spoon" na context de Ethermint é uma modificação significativa na rede que resulta na criação de uma nova blockchain separada e independente, mantendo um histórico compartilhado com a rede original da Ethereum. O termo "hard spoon" é uma variação do termo "hard fork", que é usado para descrever uma bifurcação na rede blockchain que não é compatível com versões anteriores do protocolo.

Com o Ethermint você pode:

  • Implementar a Interface de Aplicação de Blockchain (ABCI) do Tendermint Core para gerenciar a blockchain.
  • Aproveitar os módulos e outros mecanismos implementados pelo Cosmos SDK.
  • Utilizando o geth como uma biblioteca para evitar a reutilização de código e melhorar a manutenibilidade.
  • Expondo uma camada totalmente compatível com Web3 JSON-RPC para interagir com clientes Ethereum existentes e ferramentas (Metamask, Remix, Truffle, etc).

Arquitetura:

Cosmos-SDK

Tendermint Core e a Interface de Aplicação de Blockchain (ABCI).

Tendermint consiste em dois principais componentes técnicos: um mecanismo de consenso de blockchain e uma interface de aplicação genérica. O mecanismo de consenso, chamado Tendermint Core, assegura que as mesmas transações sejam registradas em todas as máquinas na mesma ordem. A interface de aplicação, chamada de Interface de Aplicação de Blockchain (ABCI), permite que as transações sejam processadas em qualquer linguagem de programação.

Tendermint evoluiu para ser um mecanismo de consenso de blockchain de propósito geral que pode hospedar estados de aplicação arbitrários. Como Tendermint pode replicar aplicações arbitrárias, ele pode ser usado como uma substituição plug-and-play para os mecanismos de consenso de outras blockchains. Ethermint é um exemplo disso, sendo uma aplicação ABCI que substitui o PoW (Prova de Trabalho) do Ethereum por meio do mecanismo de consenso do Tendermint.

Outro exemplo de aplicação de criptomoeda construída sobre o Tendermint é a rede Cosmos. O Tendermint é capaz de decompor o design da blockchain oferecendo uma API muito simples (ou seja, o ABCI) entre o processo de aplicação e o processo de consenso.