Repolode
ethereum

ethereum/go-ethereum

Implementação em Go da camada de execução do Ethereum, que funciona como nó full ou archive e oferece acesso via JSON-RPC e ferramentas para desenvolvedores.

Estrelas
51,404
Forks
22,116
Issues abertas
480
Último commit
há 9 horas

O que é?

go-ethereum (geth) é a implementação em Go da camada de execução do Ethereum. Seu binário principal, geth, conecta-se à rede principal ou a redes de teste, como a Sepolia, sincroniza o estado da blockchain e pode funcionar, por padrão, como nó full ou como nó archive, que mantém todo o histórico de estados.

O Geth disponibiliza a API padrão Ethereum JSON-RPC, além de suas próprias APIs de gerenciamento, via HTTP, WebSocket e IPC. Também inclui um console JavaScript interativo para enviar transações, criar contas e fazer deploy de contratos. As ferramentas complementares incluem geração de bindings para contratos com abigen, depuração de bytecode da EVM com evm, inspeção de RLP com rlpdump e verificações de rede de baixo nível com devp2p.

Para desenvolvimento local, o geth oferece um modo dev de nó único e um backend simulado para testar contratos em Go; o Kurtosis pode iniciar redes de teste com vários nós. Para executar um nó na rede pós-Merge, também é necessário usar um cliente da camada de consenso.

Recursos principais

  • 01Funciona por padrão como nó full ou como nó archive, que mantém todo o histórico de estados.
  • 02Disponibiliza a API padrão Ethereum JSON-RPC via HTTP, WebSocket e IPC.
  • 03Inclui um console JavaScript interativo para interagir com a rede.
  • 04Oferece o abigen para gerar bindings Go com segurança de tipos a partir de ABIs de contratos.
  • 05Inclui ferramentas para desenvolvedores, como o executor de bytecode evm e o rlpdump.
  • 06Dá suporte à rede principal e a redes de teste, incluindo a Sepolia, além de redes privadas.

Casos de uso

  • Executar um nó Ethereum para consultar dados da blockchain ou enviar transações.
  • Gerar bindings Go para contratos inteligentes usados em serviços de backend.
  • Depurar opcodes da EVM passo a passo com a ferramenta evm.
  • Configurar uma blockchain de desenvolvimento local ou uma rede de teste com vários nós para testar contratos.

Início rápido

  1. 1

    Instale o Go 1.25 ou posterior e um compilador C e, em seguida, compile o geth a partir do código-fonte

    make geth
  2. 2

    Execute o geth e abra o console interativo para sincronizar com a rede principal do Ethereum

    geth console
  3. 3

    Como alternativa, execute o geth no Docker usando a imagem oficial

    docker run -d --name ethereum-node -v /Users/alice/ethereum:/root -p 8545:8545 -p 30303:30303 ethereum/client-go

Antes de usar

  • Executar um nó completo exige hardware robusto: pelo menos 2 TB de espaço em SSD e 8 GB de RAM.
  • A compilação a partir do código-fonte requer Go 1.25 ou posterior e um compilador C.

Tópicos

Perguntas frequentes

O que é go-ethereum?
Implementação em Go da camada de execução do Ethereum, que funciona como nó full ou archive e oferece acesso via JSON-RPC e ferramentas para desenvolvedores. go-ethereum (geth) é a implementação em Go da camada de execução do Ethereum. Seu binário principal, geth, conecta-se à rede principal ou a redes de teste, como a Sepolia, sincroniza o estado da blockchain e pode funcionar, por padrão, como nó full ou como nó archive, que mantém todo o histórico de estados.
go-ethereum é gratuito? Qual é a licença?
go-ethereum é open source sob a licença LGPL-3.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
go-ethereum ainda é mantido?
Manutenção ativa. O último commit de go-ethereum foi em 21 de out. de 2026.
Para que posso usar go-ethereum?
Executar um nó Ethereum para consultar dados da blockchain ou enviar transações. Gerar bindings Go para contratos inteligentes usados em serviços de backend. Depurar opcodes da EVM passo a passo com a ferramenta evm. Configurar uma blockchain de desenvolvimento local ou uma rede de teste com vários nós para testar contratos.
Como instalar go-ethereum?
Instale o Go 1.25 ou posterior e um compilador C e, em seguida, compile o geth a partir do código-fonte: make geth Execute o geth e abra o console interativo para sincronizar com a rede principal do Ethereum: geth console Como alternativa, execute o geth no Docker usando a imagem oficial: docker run -d --name ethereum-node -v /Users/alice/ethereum:/root -p 8545:8545 -p 30303:30303 ethereum/client-go
Onde consigo go-ethereum?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ethereum/go-ethereum

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados