12 个不稳定版本 (4 个破坏性版本)
0.9.0 | 2023 年 1 月 25 日 |
---|---|
0.9.0-rc.1 | 2022 年 12 月 26 日 |
0.9.0-alpha.1 | 2022 年 11 月 17 日 |
0.8.0 | 2022 年 6 月 30 日 |
0.5.0 | 2021 年 11 月 27 日 |
#29 在 #lnp-bp
390 每月下载量
用于 35 个 crate (2 个直接使用)
62KB
1.5K SLoC
LNP/BP 库
该仓库包含一系列库,实现了 LNP/BP 规范 https://github.com/LNP-BP/LNPBPs,这些规范不适合其他现有的 LNP/BP 核心库(客户端验证、BP、LNP、RGB、发票)。它可以用于简化在闪电网络和比特币区块链之上开发第 2 层和第 3 层解决方案。
目前,该仓库包含以下 crate
lnpbp_bech32
: 实现客户端验证数据的 Bech32 编码 LNPBP-14 标准的库。lnpbp_chain
: 提供与比特币相关的区块链链参数的库;lnpbp_elgamal
: 实现使用 Secp256k1 曲线的 ElGamal 加密的 LNPBP-31 标准的库;- 包含上述所有库的 LNPBP 框架 crate。
不包括在此 crate 中的其他实现 LNP/BP 规范的库
- 客户端验证基础库 (
client_side_validation
) - 比特币协议核心库 (
bp-core
) - 闪电网络协议核心库 (
lnp-core
) - 实现比特币和闪电网络中机密和可扩展智能合约的 RGB 核心库 (
rgb-core
) - 通用发票库
基于这些库的项目当前列表包括
- 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 文件中找到
更多信息
关于替代币/替代链的政策
不支持也不计划支持除比特币区块链/比特币协议之外的替代币和"区块链";针对它们的拉取请求将被拒绝。
许可
请参阅LICENCE 文件。
lib.rs
:
LNPBP 库定义链参数。
链是启用了比特币或具有比特币意识的区块链,包括
- 比特币主网
- 不同的比特币测试网和签名网
- 比特币侧链
- 独立的比特币意识链,能够与客户端验证一起工作
依赖项
~10MB
~151K SLoC