13 个不稳定版本 (4 个重大变更)

0.9.0 2023 年 1 月 25 日
0.9.0-rc.12022 年 12 月 26 日
0.9.0-alpha.12022 年 11 月 17 日
0.8.0 2022 年 6 月 30 日
0.5.0 2021 年 11 月 27 日

#11 in #bech32

Download history 69/week @ 2024-04-07 94/week @ 2024-04-14 104/week @ 2024-04-21 85/week @ 2024-04-28 101/week @ 2024-05-05 90/week @ 2024-05-12 91/week @ 2024-05-19 109/week @ 2024-05-26 88/week @ 2024-06-02 48/week @ 2024-06-09 94/week @ 2024-06-16 77/week @ 2024-06-23 19/week @ 2024-06-30 35/week @ 2024-07-07 99/week @ 2024-07-14 76/week @ 2024-07-21

231 每月下载量
用于 29 个crate(2 个直接使用)

MIT 许可证

22KB
429

LNP/BP 库

Build Tests Lints codecov

crates.io Docs unsafe forbidden MIT licensed

该仓库代表一组实现 LNP/BP 规范的库 https://github.com/LNP-BP/LNPBPs,这些规范不适合其他现有的 LNP/BP 核心库(客户端验证、BP、LNP、RGB、发票)。它可以用于简化在 Lightning Network 和 Bitcoin 区块链之上开发层 2 & 3 解决方案。

目前,该仓库包含以下crate

  • lnpbp_bech32:实现客户端验证数据的 Bech32 编码 LNPBP-14 标准的库。
  • lnpbp_chain:提供与比特币相关区块链链参数的库;
  • lnpbp_elgamal:实现使用 Secp256k1 曲线的 ElGamal 加密的 LNPBP-31 标准的库;
  • 包含上述所有库的 LNPBP 框架 crate。

未包含在此 crate 中的其他实现 LNP/BP 规范的库

基于这些库的项目当前列表包括

  • RGB 节点
  • LNP 节点 允许
    • RGB 扩展
    • DLC 扩展
    • Lightspeed 支付
    • 多对等通道
    • 更快的闪电实验(更快地采用 eltoo、Taproot 等)
  • BP 节点:比特币区块链索引服务;更高效、通用的 Electrum 服务器替代品。展望未来 - 验证比特币网络节点(使用 libbitcoinconsus)

利用 LNP/BP 库,您可以简化以下开发

  • 离散对数合约
  • 实现实验性的闪电功能
  • 进行复杂的多线程或弹性/容器化客户端-服务微服务架构

库的开发得到LNP/BP标准协会的支持。

安装

克隆并编译库

最低支持的Rust编译器版本(MSRV):1.59.0。

git clone https://github.com/lnp-bp/rust-lnpbp
cd rust-lnpbp
cargo build --release --all-features

库可以在 target/release 目录中找到。

您可以使用以下命令运行完整的测试套件

cargo test --workspace --all-features

有关更详细的说明,请参阅 cargo 文档

在其他项目中使用库

将这些行添加到您的 Cargo.toml 文件的 [dependencies] 部分的末尾

lnpbp = "~0.5.0"
lnpbp_bech32 = "~0.5.0"
lnpbp_chain = "~0.5.0"
lnpbp_elgamal = "~0.5.0"

贡献

贡献指南可以在单独的 CONTRIBUTING 文件中找到

更多信息

关于替代币/替代链的政策

不支持也不计划支持除了比特币区块链/比特币协议之外的替代币和"区块链";针对它们的拉取请求将被拒绝。

许可

请参阅 许可 文件。


lib.rs:

实现LNPBP-14标准的库:客户端验证数据的Bech32编码。

需要根据LNPBP-14实现data1...z1... Bech32实现的类型必须实现ToBech32PayloadFromBech32Payload特性。

为实现了bitcoin_hashes::Hash特性的哈希类型自动提供Bech32 id1...表示。

依赖关系

~11MB
~160K SLoC