椭圆曲线循环与双线性测试的零知识证明技术
1. 椭圆曲线合适循环的计算
寻找和构建合适的椭圆曲线循环需要大量的计算工作,主要分为循环发现和循环构建两个步骤。
1.1 循环发现
为了找到循环的合适参数,研究人员探索了一个大的空间,即所有判别式达$1.1 · 10^{15}$的情况。这一搜索在现代 x86 服务器的大型集群上进行,约需要 610,000 核心小时。搜索算法是对已有算法的改进。在找到的所有 2 - 循环中,选择了曲线 2 - 循环$(E_4, E_6)$的参数$(q_4, t_4)$和$(q_6, t_6)$,满足以下条件:
- $q_4$和$q_6$各有 298 位;
- $q_4$和$q_6$具有塔式友好性;
- $\nu_2(r_4 - 1) = 34$且$\nu_2(r_6 - 1) = 17$。
虽然$q_4$和$q_6$的比特长度高于 240 位的下限,但选择这样的参数是为了获得具有高 2 - 进性的罕见循环,这对 zk - SNARK 的效率提升比因比特长度增加导致的速度减慢更有帮助。
1.2 循环构建
$E_4$和$E_6$的判别式均为 614144978799019,要明确构建这些曲线,需要使用复乘法(CM 方法)中的先进技术。以下是选定的 2 - 循环$(E_4, E_6)$的参数和方程:
- $E_4/F_{q_4}: y^2 = x^3 + A_4x + B_4$
- $A_4 = 2$
- $B_4 = 4238945365266841782894160115338882400293181036738960028033
超级会员免费看
订阅专栏 解锁全文
1258

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



