Repolode
gosuda

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. 1

    安装 Rust 工具链以及 C/C++ 构建工具(Debian/Ubuntu 上为 build-essential)

  2. 2

    克隆代码仓库

    git clone https://github.com/gosuda/bitcoin-rs.git
  3. 3

    使用 quickstart 配置构建 bitcoin-rs 二进制文件

    cargo build --locked --profile quickstart -p bitcoin-rs
  4. 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#blockchain#full-node#rust#p2p#json-rpc#esplora#bitcoin-core#bitcoin-node#btc

常见问题

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 数据每日更新。

相关项目