ITADN
romanz/electrs
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Logo

Rust 中的 Electrum 服务器

CI PRs Welcome crates.io gitter.im

Electrum Server 的高效重新实现,灵感来自 ElectrumXElectrum Personal Serverbitcoincore-indexd

该项目的动机是让用户能够自托管 Electrum 服务器, 所需的硬件资源与 full node 相差不大。 服务器会对整个 Bitcoin 区块链进行索引,生成的索引支持针对任意用户钱包的快速查询, 允许用户使用 Electrum wallet 实时跟踪余额和交易历史。 由于它运行在用户自己的机器上,钱包无需与外部 Electrum 服务器通信, 从而保护了用户地址和余额的隐私。

BTC Prague 2024 dev/hack/day 幻灯片在此:https://bit.ly/electrs

用法

请优先使用我们的使用指南!

外部指南可能已过时并存在各种问题。 至少请双重检查您使用的指南是否得到积极维护。 如果您无法使用我们的指南,请询问您不理解的内容,或考虑使用自动化部署。

请注意,此 Electrum 服务器实现针对个人/小规模(家庭/朋友)使用进行了优化。 将其公开运行是个坏主意,因为这会使你暴露于 DoS 攻击,可能还有其他攻击。 如果你想运行一个公共服务器,你可能对 Blockstream 的 electrs 分支 感兴趣,它针对公共使用进行了更好的优化,但代价是消耗显著更多的资源。

功能

  • 支持 Electrum 协议 v1.4
  • 维护交易输入和输出的索引,允许快速余额查询
  • 使用 HDD 存储快速同步比特币区块链(2023 年 8 月约 504GB 耗时约 6.5 小时)。
  • 低索引存储开销(约 10%),依赖本地全节点进行交易检索
  • 高效的内存池跟踪器(允许更好的费用 估算
  • 低 CPU 和内存使用(初始索引完成后)
  • txindex 对于比特币节点不是必需的
  • 使用单个 RocksDB 数据库,以获得更好的一致性和崩溃恢复

山寨币

不支持山寨币! 放宽共识规则的比特币代码库分支(硬分叉)也不支持

您可能能够找到一个支持它们的 electrs 分支,四处看看或自己创建一个,但请不要在此提交 issue/PR。

索引数据库

数据库模式描述在这里

贡献

欢迎对本项目的所有贡献。请参阅贡献指南以获取更多详细信息。

标志

我们的标志Dominik Průša 在 MIT 许可证下慷慨提供。 基于 Electrum 标志Rust 语言标志