用 Rust 编写的比特币全节点,采用关系型存档替代 UTXO 集,并内置 Electrum 服务。
gosuda/bitcoin-rs
用 Rust 编写的独立比特币全节点,提供与 Bitcoin Core 兼容的 P2P 和 RPC 接口,并可嵌入其他 Rust 程序。
- Star
- 58
- Fork
- 6
- 未关闭 Issue
- 24
- 最近提交
- 前天
这是什么?
bitcoin-rs 是一个独立的比特币全节点守护进程,同时也是可嵌入其他应用的 Rust 工作区。节点自行实现链状态、存储、区块同步、内存池、挖矿模板和对外服务,底层原语则基于 rust-bitcoin 库。
节点对外提供与 Core 兼容的 P2P、JSON-RPC、REST、ZMQ 和 Esplora HTTP 接口。内置的 txindex、blockfilterindex 和 scriptindex 支撑 Esplora API 以及 descriptor、PSBT 辅助功能,密钥则保留在节点之外。脚本验证默认使用原生 Rust 解释器,也可通过特性开关启用 libbitcoinkernel。
项目目前需要从源码编译,未发布二进制版本。兼容性已在 regtest 上针对 Bitcoin Core 31.1 进行验证,项目目前不声明可用于生产或主网。
核心功能
- 01与 Core 兼容的 P2P 网络,支持 BIP324 v2 传输和 compact blocks
- 02提供 JSON-RPC、REST、ZMQ 和 Esplora HTTP 接口
- 03可嵌入的 Node 类型,能在 Rust 代码中启动和关闭
- 04内置 txindex、blockfilterindex 和 scriptindex 索引
- 05脚本验证可在原生 Rust 解释器与 libbitcoinkernel 之间选择
适用场景
- 在 regtest 上运行本地节点,用于开发和测试比特币应用
- 将全节点嵌入 Rust 应用中,替代 RPC 调用
- 为区块浏览器或钱包后端提供 Esplora 风格 API
- 在保持 Core 兼容行为的前提下研究替代节点架构
快速上手
- 1
安装 Rust 工具链以及 C/C++ 构建工具(Debian/Ubuntu 上为 build-essential)
- 2
克隆代码仓库
git clone https://github.com/gosuda/bitcoin-rs.git - 3
使用 quickstart 配置构建 bitcoin-rs 二进制文件
cargo build --locked --profile quickstart -p bitcoin-rs - 4
启动绑定到本地回环地址的 regtest 节点
./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 &
使用前须知
- 未发布 GitHub Release 二进制文件,必须从源码构建。
- README 未声称与 Bitcoin Core 完全一致或已可用于生产,部分功能(如钱包 RPC)有意不支持。
- 主动区块公告仍待留存的验证运行确认。
- BIP352 Silent Payments 与 Stratum V2 适配器仍处于实验阶段。
标签
常见问题
- bitcoin-rs 是什么?
- 用 Rust 编写的独立比特币全节点,提供与 Bitcoin Core 兼容的 P2P 和 RPC 接口,并可嵌入其他 Rust 程序。 bitcoin-rs 是一个独立的比特币全节点守护进程,同时也是可嵌入其他应用的 Rust 工作区。节点自行实现链状态、存储、区块同步、内存池、挖矿模板和对外服务,底层原语则基于 rust-bitcoin 库。
- bitcoin-rs 可以免费使用吗?用的什么许可证?
- bitcoin-rs 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- bitcoin-rs 还在维护吗?
- 活跃维护中。bitcoin-rs 最近一次提交是在 2026年11月5日。
- bitcoin-rs 适合用来做什么?
- 在 regtest 上运行本地节点,用于开发和测试比特币应用 将全节点嵌入 Rust 应用中,替代 RPC 调用 为区块浏览器或钱包后端提供 Esplora 风格 API 在保持 Core 兼容行为的前提下研究替代节点架构
- bitcoin-rs 怎么安装和运行?
- 安装 Rust 工具链以及 C/C++ 构建工具(Debian/Ubuntu 上为 build-essential) 克隆代码仓库: git clone https://github.com/gosuda/bitcoin-rs.git 使用 quickstart 配置构建 bitcoin-rs 二进制文件: cargo build --locked --profile quickstart -p bitcoin-rs 启动绑定到本地回环地址的 regtest 节点: ./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 &
- 在哪里获取 bitcoin-rs?
- 源代码和安装说明在 GitHub 上:https://github.com/gosuda/bitcoin-rs
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
用 Go 语言编写的比特币全节点实现,负责验证和提供区块链数据,不包含钱包功能。
比特币协议的参考全节点实现,连接点对点网络并独立验证区块与交易。
Go 语言实现的以太坊执行层客户端,可运行全节点或归档节点,并提供 JSON-RPC 接口。
Dash Core 是 Dash 点对点数字货币的开源节点与钱包软件,支持即时、私密的支付。
Kaspa 区块链的 Rust 全节点实现,并附带钱包 CLI、WASM SDK 与 wRPC 库。