1. 引言
前序博客:
大整数的模乘:
- 是每种SNARK计算的核心
- 是最昂贵的基石
- 通常可决定整个协议的复杂度
对模乘运算的哪怕一点点改进,都可能带来大幅加速。
Ingonyama团队2023年论文 Multi-Precision Fast Modular Multiplication,开源代码实现见:
基础算法优化------Fast Modular Multiplication(本文称为Barrett-Domb模乘算法)是一种基于Barrett modular reduction方案的低复杂度、硬件友好的模乘算法。
Multi-Precision Fast Modular Multiplication为多精度的、GPU/CPU友好的Barrett-Domb模乘算法。相比于现有广泛使用的Montgomery模乘算法:
- 本算法具有竞争力,且可能会消除对繁琐的Montgomery转换的需求。
- 如NTT中需要大量的Montgomery格式转入转出,本算法可具有更低的乘法运算次数。
参考资料
[1] Ingonyama团队2023年1月博客 Multi-Precision Fast Modular Multiplication