Figment Capital:深入解读零知识证明加速

行业资讯12个月前更新 领域OK
65 0 0

知识证明允许一方(通常被称为证明者),向另一方(通常被称为验证者)证明他们成功地完成了一次计算。一个零知识证明拥有以下三个关键特性:

Figment Capital:深入解读零知识证明加速

零知识证明生成有两大主要瓶颈:多标量乘法(Multi-scalar Multiplication,MSM)和数论变换(Number Theoretic Transform,NTT)。这两项操作自己就能占到证明生成时间的 80% 到 95%,具体则取决于零知识证明的承诺方案和具体的执行。首先,我们会介绍这些操作,其后,我们将提供各个操作能够如何加速的概览。

让我们从素数有限域开始。MSM 和 NTT 都发生在素数有限域中,因此了解素数有限域是重要的第一步。

现在我们已经涵盖了素数有限场,我们能够理解 MSM 了。假设我们有两行数字。我们可以对这些行进行的一个操作是,将一行中的每个元素,与另一行中的相应元素相乘,然后将乘积相加成为一个单一的数字。这种操作被称为点积,在数学中常用。下面是它的样子:

「水桶法」是用于加速 MSM 计算的一个巧妙的技巧。点加法计算在计算上是很便宜的。MSM 的问题在于点乘法。在真正的零知识证明中,我们的 EC 点所乘的标量是非常大的。对于每一个点乘法,计算都需要数百万次的求和。幸运的是,有一个简单的方法可以加快 MSM 的速度:我们可以并行计算所有的点乘法。

NTT,也被称为快速傅里叶变换(FFT),是零知识证明生成中的第二个关键瓶颈。其操作和基础数学比 MSM 更复杂,所以我们不会在此提供技术解释。相反,我们将触及一些关于如何和为什么计算它们的直觉。

我们已经对零知识证明加速的最重要的计算做了一个高层次的概述。算法上的改进,如用于 MSM 的水桶法和用于评估多项式的 NTT,导致了零知识证明时间的重大进步。但要进一步提高零知识证明性能,我们必须优化底层硬件。

正如我们用水桶法所证明的那样,MSM 很容易被并行化。然而,即使在严重并行化的情况下,计算时间仍然很长。此外,MSM 有大量的内存需求,因为需要存储所有被操作的 EC 值。因此,尽管 MSM 具有在硬件上加速的潜力,但它们需要巨大的内存和并行计算。

有四种主要的计算机芯片类型: CPU、GPU、FPGA 和 ASIC. 每种芯片在其结构、性能和通用性方面都有不同的权衡。

我们可以通过多种方式在硬件上加速零知识证明:

区块链行业多年来一直在等待零知识证明为生产做好准备。这项技术已经吸引了我们的想象力,承诺增强去中心化应用的可扩展性、隐私和互操作性。直到最近,该技术还不现实,主要是由于硬件限制和漫长的证明时间。这种情况正在迅速改变:零知识证明方案和硬件的进步正在解决 MSM 和 NTT 等计算瓶颈问题。有了更好的算法和更强大的硬件,我们可以将零知识证明加速到足以释放其潜力,从而彻底改变 Web3。

鸣谢: 特别感谢 Brian Retford(RiscZero)、Leo Fan(Cysic)、Emanuele Cesena(Jump Crypto)、Mikhail Komarov(=nil; Foundation)、Anthony Rose(zkSync)、Will Wolf 和 Luke Pearson(Polychain),以及 Penumbra Labs 团队的精彩讨论和反馈,为本文做出了贡献。

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...