Node core e contratos da Chainlink para operar uma rede descentralizada de oráculos que leva dados do mundo real e computação off-chain a smart contracts.
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
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
Execute o geth e abra o console interativo para sincronizar com a rede principal do Ethereum
geth console - 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
Toolkit em Rust para desenvolver smart contracts na Ethereum, com Forge, Cast, Anvil e Chisel para criar, testar e interagir com redes EVM.
Implementação pura em Go da API WebRTC para criar conexões P2P de áudio, vídeo e dados em tempo real.
Plataforma de blockchain em Go para criar dApps, soluções DeFi, DAOs e aplicações cross-chain com smart contracts, tabelas de banco de dados e interfaces.
Solidity é uma linguagem de programação estaticamente tipada e orientada a contratos para criar smart contracts na plataforma Ethereum.
A segunda edição de "Mastering Ethereum", um livro sobre desenvolvimento na Ethereum, smart contracts e a tecnologia por trás da rede.