2 个版本

0.1.1 2024年2月8日
0.1.0 2023年11月24日

#2283 in 密码学

Download history 207/week @ 2024-04-06 315/week @ 2024-04-13 262/week @ 2024-04-20 172/week @ 2024-04-27 186/week @ 2024-05-04 167/week @ 2024-05-11 181/week @ 2024-05-18 97/week @ 2024-05-25 206/week @ 2024-06-01 274/week @ 2024-06-08 236/week @ 2024-06-15 58/week @ 2024-06-22 47/week @ 2024-06-29 113/week @ 2024-07-06 88/week @ 2024-07-13 99/week @ 2024-07-20

每月 354 次下载
3 个包中(通过 generic-ec-curves)使用

MIT/Apache

23KB
528

License Docs Crates io

Stark Curve

Stark 曲线的纯 Rust 实现。[链接](https://docs.starkware.co/starkex/crypto/stark-curve.html)。提供了由 [primeorder](https://crates.org.cn/crates/primeorder)、[elliptic-curve](https://crates.org.cn/crates/elliptic-curve)、和 [ff](https://crates.org.cn/crates/ff) 包支持的基椭圆曲线算术。友好地支持 #![no_std]

曲线参数

如 Stark 曲线 [规范](https://docs.starkware.co/starkex/crypto/stark-curve.html) 所述,此包提供了由以下方程定义的曲线实现

$$y^2 = x^3 + \alpha x + \beta \pmod p$$

其中

$$ \begin{aligned} \alpha &= 1\\ \beta &= 3141592653589793238462643383279502884197169399375105820974944592307816406665\\ p &= 3618502788666131213697322783095070105623107215331596699973092056135872020481\\ &= 2^{251} + 17 \cdot 2^{192} + 1 \end{aligned} $$

此外,曲线阶数 $n$,虽然在规范中没有提及,但可以在这里找到
$n = 3618502788666131213697322783095070105526743751716087489154079457884512865583$

$p$ 和 $n$ 均为质数。

安全性

此包不实现任何敏感的加密代码。相反,我们将标量算术委托给 [ff](https://crates.org.cn/crates/ff) 包,将椭圆曲线点算术委托给 [primeorder](https://crates.org.cn/crates/primeorder) 包,这些包被认为是广泛使用且经过测试的。

许可证

根据您的选择,许可如下

  • Apache License,版本 2.0
  • MIT 许可证

依赖关系

~4MB
~94K SLoC