1个不稳定版本
0.4.0 | 2024年5月26日 |
---|
#2539 in 密码学
在 6 crates 中使用
620KB
14K SLoC
此库实现了BN254曲线,该曲线是[BCTV14]论文中采样的一部分。名称表示它是一个嵌入度为12的Barreto--Naehrig曲线,定义在254位(素数)域上。标量域高度2-adic。
该曲线还在libff中以bn128
的名称实现。它与以太坊中使用的bn256
曲线相同(例如:go-ethereum)。
#警告 此曲线不再满足128位安全级别。
曲线信息
- 基域: q = 21888242871839275222246405745257275088696311157297823662689037894645226208583
- 标量域: r = 21888242871839275222246405745257275088548364400416034343698204186575808495617
- valuation(q - 1, 2) = 1
- valuation(r - 1, 2) = 28
- G1曲线方程: y^2 = x^3 + 3
- G2曲线方程: y^2 = x^3 + B, 其中
- B = 3/(u+9) where Fq2 is represented as Fq[u]/(u^2+1) = Fq2(19485874751759354771024239261021720505790618469301721065564631296452457478373, 266929791119991161246907387137283842545076965332900288569378510910307636690)
依赖关系
~3.5–5MB
~92K SLoC