#libsecp256k1 #ecdsa #bitcoin #ethereum #elliptic-curve #secp256k1

已删除 parity-secp256k1

是 Pieter Wuille 的 libsecp256k1 库的 Rust 绑定版本的分叉。实现了 SECG 椭圆曲线组 secp256k1 的 ECDSA 以及相关工具。

2 个不稳定版本

使用旧的 Rust 2015

0.7.0 2019 年 10 月 23 日
0.6.0 2019 年 10 月 22 日

#15 in #libsecp256k1

Download history 964/week @ 2024-04-15 788/week @ 2024-04-22 732/week @ 2024-04-29 758/week @ 2024-05-06 800/week @ 2024-05-13 748/week @ 2024-05-20 931/week @ 2024-05-27 721/week @ 2024-06-03 466/week @ 2024-06-10 693/week @ 2024-06-17 631/week @ 2024-06-24 290/week @ 2024-07-01 670/week @ 2024-07-08 830/week @ 2024-07-15 746/week @ 2024-07-22 644/week @ 2024-07-29

2,905 每月下载量
19 个 crate 中使用 (通过 near-crypto-v01)

CC0 许可证

495KB
10K SLoC

C 7K SLoC // 0.1% comments Rust 1.5K SLoC // 0.1% comments GNU Style Assembly 742 SLoC // 0.1% comments Java 437 SLoC // 0.3% comments M4 224 SLoC // 0.3% comments Automake 158 SLoC Shell 2 SLoC

包含 (神秘的自动配置代码,19KB) depend/secp256k1/configure.ac

Build Status crates.io

parity-secp256k1

parity-secp256k1libsecp256k1 的包装,一个由 Peter Wuille 编写的 C 库,用于生成使用 SECG 曲线 secp256k1 的 ECDSA 签名。它是 rust-secp256k1 的分叉。

此库

  • 公开了对所有 libsecp256k1 函数的类型安全 Rust 绑定
  • 实现了密钥生成
  • 实现了通过 RFC6979 的确定性随机数生成
  • 实现了许多单元测试,增加了 libsecp256k1 中已有的测试
  • 为了效率和在独立实现中使用,不进行任何分配(除了单元测试)

完整文档

构建

克隆仓库。运行以下命令

git submodule init
git submodule update
cargo check

依赖项

~1.5–2.3MB
~43K SLoC