3 个版本

0.9.0 2023年1月25日
0.9.0-rc.12022年12月26日
0.9.0-beta.12022年11月20日

#39 in #lnp-bp

每月 23 次下载
用于 lnpbp

MIT 许可证

21KB
526

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 网络 和 Bitcoin 区块链之上开发 2 层 & 3 层解决方案。

目前,该仓库包含以下 crate

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

其他实现 LNP/BP 规范的库,不包括在本 crate 中

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

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

可能地,使用LNP/BP库可以简化以下开发

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

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 文件中找到

更多信息

关于其他加密货币/区块链的政策

不支持也不计划支持除比特币区块链/比特币协议之外的其他加密货币和“区块链”;针对它们的拉取请求将被拒绝。

许可

请参阅LICENCE 文件。

依赖项

~11MB
~155K SLoC