Un nodo completo de Bitcoin escrito en Rust, con un archivo relacional en lugar de un conjunto UTXO y un servidor Electrum integrado.
gosuda/bitcoin-rs
Un nodo completo independiente de Bitcoin escrito en Rust, con interfaces P2P y RPC compatibles con Core y componentes integrables en otras aplicaciones.
- Estrellas
- 58
- Forks
- 6
- Issues abiertos
- 24
- Último commit
- ayer
¿Qué es?
bitcoin-rs es un daemon de nodo completo de Bitcoin y un workspace de Rust que se puede integrar en otras aplicaciones. Gestiona por sí mismo el estado de la cadena, el almacenamiento, la sincronización de bloques, el mempool, las plantillas de minería y los servidores externos, y se apoya en las crates de la biblioteca rust-bitcoin para las primitivas de bajo nivel.
El nodo ofrece interfaces P2P, JSON-RPC, REST, ZMQ y HTTP de Esplora compatibles con Core. Sus índices (txindex, blockfilterindex y scriptindex) respaldan la API de Esplora y las herramientas auxiliares para descriptores y PSBT; las claves de la wallet se mantienen fuera del nodo. La verificación de scripts usa de forma predeterminada un intérprete nativo de Rust, con un backend opcional libbitcoinkernel habilitado mediante una feature flag.
El proyecto se compila desde el código fuente; no se publican binarios de lanzamiento. Su compatibilidad se prueba con Bitcoin Core 31.1 en regtest, y el README no afirma que esté listo para producción ni para mainnet.
Funciones clave
- 01Red P2P compatible con Core, con transporte BIP324 v2 y bloques compactos
- 02Interfaces JSON-RPC, REST, ZMQ y HTTP de Esplora
- 03Tipo Node integrable, que se puede iniciar y detener desde código Rust
- 04Índices integrados txindex, blockfilterindex y scriptindex
- 05Verificación de scripts seleccionable: intérprete nativo de Rust o libbitcoinkernel
Casos de uso
- Ejecutar un nodo regtest para desarrollar o probar aplicaciones de Bitcoin localmente
- Integrar un nodo completo en una aplicación Rust en lugar de llamar a RPC
- Ofrecer APIs al estilo de Esplora para exploradores o backends de wallets
- Investigar arquitecturas alternativas de nodos sin perder el comportamiento compatible con Core
Inicio rápido
- 1
Instala la toolchain de Rust y las herramientas de compilación de C/C++ (build-essential en Debian/Ubuntu)
- 2
Clona el repositorio
git clone https://github.com/gosuda/bitcoin-rs.git - 3
Compila el binario bitcoin-rs con el perfil quickstart
cargo build --locked --profile quickstart -p bitcoin-rs - 4
Inicia un nodo regtest local enlazado a loopback
./target/quickstart/bitcoin-rs --network regtest --data-dir .bitcoin-rs-regtest --p2p-listen 127.0.0.1:18444 --dns-seeds-enabled=false --rpc-bind 127.0.0.1:18443 --scriptindex=utxo &
Antes de usarlo
- No se publica ningún binario en GitHub Releases, por lo que debes compilarlo desde el código fuente.
- El README no afirma que haya paridad ni que esté listo para producción, y algunas funciones, como las wallet RPCs, no se admiten deliberadamente.
- Los anuncios proactivos de bloques aún están pendientes de una prueba de cualificación conservada.
- BIP352 Silent Payments y el adaptador Stratum V2 son experimentales.
Temas
Preguntas frecuentes
- ¿Qué es bitcoin-rs?
- Un nodo completo independiente de Bitcoin escrito en Rust, con interfaces P2P y RPC compatibles con Core y componentes integrables en otras aplicaciones. bitcoin-rs es un daemon de nodo completo de Bitcoin y un workspace de Rust que se puede integrar en otras aplicaciones. Gestiona por sí mismo el estado de la cadena, el almacenamiento, la sincronización de bloques, el mempool, las plantillas de minería y los servidores externos, y se apoya en las crates de la biblioteca rust-bitcoin para las primitivas de bajo nivel.
- ¿bitcoin-rs es gratuito? ¿Qué licencia tiene?
- bitcoin-rs es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿bitcoin-rs sigue mantenido?
- Mantenimiento activo. El último commit de bitcoin-rs fue el 5 nov 2026.
- ¿Para qué puedo usar bitcoin-rs?
- Ejecutar un nodo regtest para desarrollar o probar aplicaciones de Bitcoin localmente Integrar un nodo completo en una aplicación Rust en lugar de llamar a RPC Ofrecer APIs al estilo de Esplora para exploradores o backends de wallets Investigar arquitecturas alternativas de nodos sin perder el comportamiento compatible con Core
- ¿Cómo se instala bitcoin-rs?
- Instala la toolchain de Rust y las herramientas de compilación de C/C++ (build-essential en Debian/Ubuntu) Clona el repositorio: git clone https://github.com/gosuda/bitcoin-rs.git Compila el binario bitcoin-rs con el perfil quickstart: cargo build --locked --profile quickstart -p bitcoin-rs Inicia un nodo regtest local enlazado a loopback: ./target/quickstart/bitcoin-rs --network regtest --data-dir .bitcoin-rs-regtest --p2p-listen 127.0.0.1:18444 --dns-seeds-enabled=false --rpc-bind 127.0.0.1:18443 --scriptindex=utxo &
- ¿Dónde consigo bitcoin-rs?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/gosuda/bitcoin-rs
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Implementación alternativa de un nodo completo de Bitcoin escrita en Go, que valida y sirve la cadena de bloques sin incluir funciones de cartera.
Implementación de referencia de un nodo completo del protocolo Bitcoin, que se conecta a la red peer-to-peer para validar bloques y transacciones.
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.
Dash Core es el software de nodo y monedero de código abierto para la moneda digital peer-to-peer Dash, diseñado para realizar pagos instantáneos y privados.
Implementación en Rust del nodo completo de Kaspa, además de una CLI de wallet, un SDK WASM y bibliotecas wRPC para la blockchain de Kaspa.