Nodo core y contratos de Chainlink para operar una red de oráculos descentralizada que lleva datos del mundo real y computación off-chain a los smart contracts.
ethereum/go-ethereum
Implementación en Go de la capa de ejecución de Ethereum, que funciona como nodo full o archive y ofrece acceso JSON-RPC y herramientas para desarrolladores.
- Estrellas
- 51,404
- Forks
- 22,116
- Issues abiertos
- 480
- Último commit
- hace 9 horas
¿Qué es?
go-ethereum (geth) es la implementación en Go de la capa de ejecución de Ethereum. Su binario principal, geth, se conecta a la red principal o a redes de prueba como Sepolia, sincroniza el estado de la cadena y, de forma predeterminada, puede funcionar como nodo full o como nodo archive, que conserva todo el estado histórico.
Geth ofrece la API estándar JSON-RPC de Ethereum y sus propias API de administración a través de HTTP, WebSocket e IPC. También incluye una consola interactiva de JavaScript para enviar transacciones, crear cuentas y desplegar contratos. Las herramientas complementarias permiten generar bindings de contratos con abigen, depurar bytecode de EVM con evm, inspeccionar RLP con rlpdump y realizar comprobaciones de red de bajo nivel con devp2p.
Para el desarrollo local, geth ofrece un modo dev de un solo nodo y un backend simulado para probar contratos en Go; Kurtosis permite iniciar redes de prueba con varios nodos. Para ejecutar un nodo en la red posterior a The Merge, también se necesita un cliente de la capa de consenso.
Funciones clave
- 01Funciona como nodo full de forma predeterminada o como nodo archive que conserva todo el estado histórico.
- 02Ofrece JSON-RPC estándar de Ethereum a través de HTTP, WebSocket e IPC.
- 03Incluye una consola interactiva de JavaScript para interactuar con la red.
- 04Incluye abigen para generar bindings de Go con seguridad de tipos a partir de las ABI de contratos.
- 05Incluye herramientas para desarrolladores, como el ejecutor de bytecode evm y rlpdump.
- 06Es compatible con la red principal y redes de prueba como Sepolia, además de redes privadas.
Casos de uso
- Ejecutar un nodo de Ethereum para consultar datos de la cadena o enviar transacciones.
- Generar bindings de Go para contratos inteligentes utilizados en servicios de backend.
- Depurar paso a paso opcodes de EVM con la herramienta evm.
- Configurar una cadena local de desarrollo o una red de prueba con varios nodos para probar contratos.
Inicio rápido
- 1
Instala Go 1.25 o posterior y un compilador de C; después, compila geth desde el código fuente
make geth - 2
Ejecuta geth y abre la consola interactiva para sincronizarte con la red principal de Ethereum
geth console - 3
Como alternativa, ejecuta geth en Docker con la imagen oficial
docker run -d --name ethereum-node -v /Users/alice/ethereum:/root -p 8545:8545 -p 30303:30303 ethereum/client-go
Antes de usarlo
- Ejecutar un nodo completo requiere un equipo potente: al menos 2 TB de espacio en SSD y 8 GB de RAM.
- Compilar desde el código fuente requiere Go 1.25 o posterior y un compilador de C.
Temas
Preguntas frecuentes
- ¿Qué es go-ethereum?
- Implementación en Go de la capa de ejecución de Ethereum, que funciona como nodo full o archive y ofrece acceso JSON-RPC y herramientas para desarrolladores. go-ethereum (geth) es la implementación en Go de la capa de ejecución de Ethereum. Su binario principal, geth, se conecta a la red principal o a redes de prueba como Sepolia, sincroniza el estado de la cadena y, de forma predeterminada, puede funcionar como nodo full o como nodo archive, que conserva todo el estado histórico.
- ¿go-ethereum es gratuito? ¿Qué licencia tiene?
- go-ethereum es open source bajo la licencia LGPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿go-ethereum sigue mantenido?
- Mantenimiento activo. El último commit de go-ethereum fue el 21 oct 2026.
- ¿Para qué puedo usar go-ethereum?
- Ejecutar un nodo de Ethereum para consultar datos de la cadena o enviar transacciones. Generar bindings de Go para contratos inteligentes utilizados en servicios de backend. Depurar paso a paso opcodes de EVM con la herramienta evm. Configurar una cadena local de desarrollo o una red de prueba con varios nodos para probar contratos.
- ¿Cómo se instala go-ethereum?
- Instala Go 1.25 o posterior y un compilador de C; después, compila geth desde el código fuente: make geth Ejecuta geth y abre la consola interactiva para sincronizarte con la red principal de Ethereum: geth console Como alternativa, ejecuta geth en Docker con la imagen oficial: docker run -d --name ethereum-node -v /Users/alice/ethereum:/root -p 8545:8545 -p 30303:30303 ethereum/client-go
- ¿Dónde consigo go-ethereum?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ethereum/go-ethereum
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Kit de herramientas basado en Rust para desarrollar contratos inteligentes en Ethereum, con Forge, Cast, Anvil y Chisel para crear, probar e interactuar con cadenas EVM.
Implementación pura en Go de la API WebRTC para crear conexiones P2P de audio, video y datos en tiempo real.
Plataforma blockchain basada en Go para crear dApps, DeFi, DAO y aplicaciones cross-chain con smart contracts, tablas de base de datos e interfaces.
Solidity es un lenguaje de programación de tipado estático y orientado a contratos para crear contratos inteligentes en la plataforma Ethereum.
La segunda edición de «Mastering Ethereum», un libro sobre desarrollo en Ethereum, smart contracts y la tecnología subyacente de la red.