3个不稳定版本
0.2.0 | 2019年8月7日 |
---|---|
0.1.1 | 2019年7月12日 |
0.1.0 | 2019年7月11日 |
#59 in #pairing
440KB
9K SLoC
目的
Rust库,用于在运行时定义参数的各种曲线上执行EC算术和配对计算。
特性(WIP)
- 域实现
- 韦尔斯特拉斯曲线实现
- a = 0
- 通用情况(a != 0,b != 0)
- b = 0(可能不会实现,以避免点(0,0)位于曲线上)
- a = -3(不是优先事项,可以通过通用情况实现,性能影响不大,且gas成本计划更简单)
- 扩展塔
- Fp2
- Fp3
- Fp4作为2/2
- Fp6作为2/3
- Fp6作为3/2
- Fp12作为2/3/2
- 配对
- BLS12曲线族
- BN家族
- MNT6家族
- MNT4家族
- 在韦尔斯特拉斯形式中由Cocks-Pinch方法生成的曲线(Ate配对)
- 在Zexe的单k=6曲线上进行测试
ABI接口
见 ABI.md.
性能测试
- 找到一种方法来减少预计算
- 实现窗口指数运算,并不要创建未使用的元素
- 找到更多测试向量以适应二次gas计划
- Benchmark Peppinger
贡献者
- Kobi Gurkan, [email protected]
咨询和使用资源
所以我不会忘记它
依赖
~2.5MB
~60K SLoC