4个版本
0.5.2 | 2023年1月18日 |
---|---|
0.5.1 | 2022年11月17日 |
0.5.0 | 2022年11月17日 |
0.3.1 | 2022年3月29日 |
#4 in #pasta
每月135次下载
用于 3 crates
155KB
3.5K SLoC
pasta_curves
此crate提供了Pasta椭圆曲线构造(Pallas和Vesta)的实现。有关Pasta曲线的更多详细信息,请参阅这篇博客文章。
文档
最低支持的Rust版本
需要Rust 1.56 或更高版本。
最低支持的Rust版本可能在将来更改,但将以小版本号的升级方式进行。
曲线描述
-
Pallas:y2 = x3 + 5 over
GF(0x40000000000000000000000000000000224698fc094cf91b992d30ed00000001)
。 -
Vesta:y2 = x3 + 5 over
GF(0x40000000000000000000000000000000224698fc0994a8dd8c46eb2100000001)
。
Pasta曲线相互形成一个循环:每个曲线的阶恰好是另一个的基础域。这个属性对于递归证明系统的效率至关重要。它们被设计成高度2-adic,这意味着每个域中存在一个大的2的幂次乘法子群。这对于它们标量域上的多项式算术的性能很重要,对于类似于PLONK的协议也是必不可少的。
可以使用我们发布的曲线搜索工具重复地获得这些曲线。
许可证
以下任一许可证下提供
- Apache License,版本2.0,(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 https://open-source.org.cn/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交包含在工作中的任何贡献,均应按上述方式双授权,不附加任何额外条款或条件。
依赖项
~0.4–0.8MB
~15K SLoC