SNARK友好的椭圆曲线2链族研究
1 引言
在密码学领域,特别是零知识证明(SNARK)的应用中,选择合适的椭圆曲线至关重要。本文将介绍一系列SNARK友好的椭圆曲线2链,并对其进行深入分析和性能评估。
2 工具与曲线推导
2.1 SageMath库
通过公开的Git仓库,提供了SageMath脚本,用于推导所有SNARK友好的2链族曲线,同时可以验证相关公式和配对成本估计。
2.2 曲线筛选标准
对于所有曲线,除了SNARK友好性和安全级别λ外,还需考虑以下属性:
- 低汉明重量的种子u(HW(u)),以实现快速的米勒循环配对。
- 从j - 不变量不同于0和1728的曲线出发的低阶同构,以便使用“简化SWU”方法进行哈希到曲线操作。
- 与r - 1互质的小整数α,可在代数SNARK哈希(如Poseidon)中使用xα作为S - 盒。
- Fq中的小非剩余,以实现高效的塔式算术。
- Fq中的“备用”位,用于进位、无穷远点或压缩点标志。
对于外部曲线,还需满足最小的h2t + 3h2y且汉明重量低,以实现快速的最终指数运算。
2.3 具体曲线选择
2.3.1 BLS12/BW6
考虑到BLS12 - 448会导致更大的BW6 - 896,重点关注377到383位的BLS12曲线。短列表中包括BLS12 - 377(u = 0x8508c00000000001)和BLS12 - 379(u = 0x9b04000000000001)。两者的HW(u) = 7,d = 2,α ≤
超级会员免费看
订阅专栏 解锁全文
52

被折叠的 条评论
为什么被折叠?



