3 个版本 (重大变更)
0.20.0 | 2024 年 8 月 13 日 |
---|---|
0.19.0 |
|
0.18.0 |
|
0.15.0 |
|
0.5.0-alpha |
|
#438 in 魔法豆
399 每月下载量
用于 4 个包 (3 直接)
210KB
4K SLoC
Rust-Payjoin
超级支付批处理以节省费用并保护您的隐私。
关于
payjoin
Payjoin 开发套件 payjoin
库实现了 BIP 78 Payjoin V1 和 BIP 77 Payjoin V2。
payjoin
包与许多钱包兼容,如 nolooking 中的 LND 和 Mutiny 钱包 中的 Bitcoin 开发套件,以及在 BitMask 中。
payjoin-cli
payjoin-cli
包以 Bitcoin Core 钱包作为参考实现,执行无装饰的 Payjoin。
payjoin-directory
payjoin-directory
包实现了 Payjoin V2 异步操作所需的 Payjoin 目录存储和转发服务器。
免责声明 ⚠️ WIP
自行承担风险。此包尚未经过独立 Rust 和 Bitcoin 安全专家的审查。
虽然我认为运行它没有很大风险,但现在请小心依赖其安全性!
寻求对验证无超额支付的代码进行审查。欢迎贡献!
开发状态
发送者 (V1 测试版,V2 预览版)
- 基本逻辑
- 实现了大多数检查
- 文档
- 使用官方测试向量的单元测试通过
- 许多单元测试
- 费用贡献支持
- 使用 bitcoind 的示例客户端
- 经过测试,与 BTCPayServer 兼容
- 经过测试,与 JoinMarket 兼容
- 最小费用率强制执行
- 独立审查
- 独立测试
接收者 (V1 测试版,V2 预览版)
- 基本逻辑
- 实现了大多数检查
- 文档
- 使用官方测试向量的单元测试通过
- 许多单元测试
- 费用贡献支持
- 使用 bitcoind 的示例服务器
- 经过测试,与 BTCPayServer 兼容
- 经过测试,与 WasabiWallet 兼容
- 与Blue Wallet兼容并测试通过
- 与Sparrow兼容并测试通过
- 经过测试,与 JoinMarket 兼容
- 最小费用率强制执行
- 折扣支持
- 独立审查
- 独立测试
代码质量
- 惯用Rust代码
- 新类型
- 无panic错误处理
- 无
unsafe
代码或经过良好测试/分析/证明的unsafe
代码 - 无警告
- 持续集成(CI)
- 集成测试
- 模糊测试
- 覆盖率测量
最小支持的Rust版本(MSRV)
payjoin
库和payjoin-cli
应始终能够在Rust 1.63.0上的任何功能组合下编译。
为了使用MSRV构建和测试,您需要锁定以下依赖项版本
payjoin
cargo update -p cc --precise 1.0.105
cargo update -p regex --precise 1.9.6
cargo update -p reqwest --precise 0.12.4
cargo update -p url --precise 2.5.0
cargo update -p tokio --precise 1.38.1
cargo update -p which --precise 4.4.0
cargo update -p zstd-sys --precise 2.0.8+zstd.1.5.5
payjoin-cli
cargo update -p cc --precise 1.0.105
cargo update -p clap_lex --precise 0.3.0
cargo update -p regex --precise 1.9.6
cargo update -p reqwest --precise 0.12.4
cargo update -p [email protected] --precise 0.3.20
cargo update -p tokio --precise 1.38.1
cargo update -p url --precise 2.5.0
cargo update -p which --precise 4.4.0
cargo update -p zstd-sys --precise 2.0.8+zstd.1.5.5
代码格式化
我们使用此项目的夜间Rust格式化工具。在提交任何更改之前,请使用夜间工具链运行rustfmt
。
许可协议
MIT
依赖项
~9–22MB
~294K SLoC