主页 > imtoken市场打不开 > Amber Group:全面解读零知识证明

Amber Group:全面解读零知识证明

imtoken市场打不开 2023-07-01 15:16:37

原标题:Amber Group:零知识证明综合解读

1 简介

零知识证明允许一方在不透露任何额外信息的情况下向另一方证明真实性。 因此,它可用于保护隐私并在隐藏所有细节的同时验证交易的有效性。 重要的是某些零知识协议可以方便地验证零知识证明,例如 STARK 和 SNARK。 这些协议生成更小的证明,并且验证这些证明要快得多。 这非常适合资源受限的区块链,对于解决加密行业的可扩展性问题尤为重要。 除此之外,零知识技术的其他用例包括:

...

一个典型的零知识系统是这样工作的:工程师首先用领域特定语言(DSL)编写要验证的语句,然后将其编译成适合零知识的格式,比如算术循环。 使用此格式生成参数后,证明系统使用这些参数及其见证的秘密作为输入值运行证明计算。 通过相对简单的计算,验证者可以根据参数和证明来决定是否通过验证。 在零知识聚合的情况下,程序或合约本身部署在 layer2 上,编译过程、参数和证明生成将由一些 layer2 节点在链下执行,然后在以太坊主网上发布和验证。

典型的零知识系统

资料来源:ZK Whiteboard Sessions - 模块一,由 Dan Boneh 教授撰写

已经发布了几个优秀的证明系统,如 Marlin、Plonky2、Halo2 等。不同的证明系统对生成证明的大小、验证所需的时间、是否需要可信设置等特性有不同的侧重。 经过几年的探索,无论多么复杂的语句,都可以实现恒定的证明大小(数百字节)和较短的验证时间(毫秒)。

然而,证明生成的复杂度几乎与算术循环的大小成线性关系,因此难度甚至可能是原始任务的数百倍。 由于证明者至少需要读取和评估循环,因此这可能需要几秒到几分钟甚至几小时。 算力成本高、证明时间长一直是零知识技术取得进展和大规模应用的主要障碍。

硬件加速可以帮助打破瓶颈。 通过算法或软件优化,将多个任务分配给最合适的硬件,两者相辅相成。

比特币分叉会影响比特币价格吗_零知识证明 比特币_比特币分叉对比特币的影响

本报告旨在帮助读者了解市场格局、零知识技术对挖矿市场的影响以及潜在机会。 报告由三部分组成:

2.用例

列举零知识用例将有助于说明市场是如何演变的。 因为不同的品类有不同的需求,硬件供应也牵扯其中。 在本节的最后,我们还将简要比较 ZKP 和 PoW(尤其是比特币)。

2.1 新兴区块链及其差异化需求

目前新兴的采用零知识技术的区块链是硬件加速的主要需求方,大致可分为扩容方案和隐私保护区块链。 零知识 Rollup 或 Volition 在链下执行交易并通过“calldata”函数提交简洁的验证证明。 隐私保护区块链使用 ZKP 允许用户在不公开交易细节的情况下确保发起交易的有效性。

这些区块链通过使用不同的证明系统来权衡证明大小、验证时间和可信设置等属性。 例如,Plonk 生成的证明具有恒定的证明大小(约 400 字节)和验证时间(约 6 毫秒),但仍需要通用的可信设置。 相比之下,Stark 不需要可信设置,但它的证明大小(~80KB)和验证时间(~10ms)不是最优的,并且随着循环大小的增加而增加。 其他系统也各有利弊。 这些证明系统之间的权衡将导致计算量的“重心”发生变化。

具体来说,目前的证明体系一般可以描述为PIOP(Polynomial Interactive Proof of Prophecy)+PCS(Polynomial Commitment Scheme)。 前者可以认为是证明者用来说服验证者的约定程序,而后者则使用数学方法来保证程序不能被破解。 就好比PCS是枪,PIOP是子弹。 项目方可以根据需要修改PIOP,可以在不同的PCS中进行选择。

Paradigm 的 Georgios Konstantopoulos 在他关于硬件加速的报告中解释说,生成证明所需的时间主要取决于两类计算任务:MSM(多标量乘法)和 FFT(快速傅里叶变换)。 但是,不是使用固定的参数,而是建立不同的PIOP,从不同的PCS中选择零知识证明 比特币,会导致FFT或MSM的计算结果不同。 以Stark为例,Stark使用的PCS是FRI(Fast Reed-Solomon Code Proximity Interaction Proof),它基于Liso码,而不是KZG或IPA使用的椭圆曲线,所以完全独立于整个证明生成过程。 MSM 参与其中。 我们在下表中对不同证明系统的计算量进行了粗略的排序。 需要注意的是:1)整个系统的准确计算量很难估计; 2)项目方通常在实施过程中根据需要对系统进行修改。

不同证明系统的计算量

比特币分叉对比特币的影响_比特币分叉会影响比特币价格吗_零知识证明 比特币

比特币分叉对比特币的影响_零知识证明 比特币_比特币分叉会影响比特币价格吗

以上情况会让项目方有自己的硬件类型偏好。 GPU(图形处理单元)由于其供应量大且易于开发,目前使用最广泛。 此外,GPU 的多核结构非常便于并行 MSM 计算。 然而,FPGA(现场可编程门阵列)可能更擅长处理 FFT,我们将在第二部分详细介绍。 使用 Stark 的项目,例如 Starknet 和 Hermez,可能需要更多的 FPGA。

从以上得出的另一个结论是,该技术仍处于早期阶段,缺乏标准化或主导的解决方案。 完全使用专用于特定算法的 ASIC(专用集成电路)可能还为时过早。 所以开发人员正在探索一个中间地带,我们稍后会进一步解释。

2.2 趋势和新范式

2.2.1 更复杂的语句

借鉴开头列出的用例,我们期待零知识在加密行业和现实世界中有更多的用途,并能够实现更复杂的证明,其中一些甚至不必遵守当前的证明系统。 项目方可以不使用PIOP和PCS,而是开发最适合自己的新原语。 而在MPC(secure multi-party computation)等其他领域,在一些工作中采用零知识协议将大大提高其实用性。 以太坊近期还计划举行KZG可信设置仪式以实现Proto-Danksharding,并计划在未来进一步实现完整版的Danksharding来处理数据可用性采样。 即使是 Optimistic Rollup 未来也可能采用 ZKP 来提高安全性并缩短争议解决时间。

虽然许多人可能将零知识视为广泛的加密行业中的一个独立部门,但我们认为零知识应被视为一种解决行业多个痛点的技术。 另一方面,为了向不同的系统和客户提供服务,未来硬件加速将更加灵活和通用。

2.2.2 本地生成证明

用于保护隐私的 ZKP 和用于压缩信息的 ZKP 在结构上有明显的区别。 为了隐藏交易细节,证明过程中涉及一些随机数。 用户需要在本地生成证明,但大多数用户没有先进的硬件。 更糟糕的是,如果大多数 dapp 仍然是 Web APP,则需要在浏览器中生成证明,这将需要更长的时间来证明。 例如,当 Manta 试图为 WASM 构建一个高性能证明者时,他们很快意识到“与原生处理速度相比,WASM 会给用户带来 10-15 倍的性能损失”。 为了解决这个问题,Manta选择成为最大的ZKP加速竞赛之一ZPrize的赞助商和架构师,Manta为WASM加速设立了专属赛道。 提供客户端版本是此类dapp的简单解决方案,但需要下载可能会导致部分潜在用户流失,客户端不适合目前的扩展钱包或其他工具。

比特币分叉会影响比特币价格吗_零知识证明 比特币_比特币分叉对比特币的影响

另一种解决方案是部分外包证明生成。 Pratyush Mishra 在第七届零知识峰会上介绍了这种方法。 首先,用户执行一些简单的计算,然后将公开声明和加密见证发送给几个第三方,然后由他们完成剩余的证明。 这样,只要其中一方是诚实的,用户的隐私就不会泄露。 这种方法将零知识协议与 MPC 使用的一些工具相结合。 或者,用户也可以使用带宽进行计算:先生成一个大规模的证明,然后将其发送给第三方,由第三方将证明压缩后发布在链上。

外包证明生成

资料来源:第七届零知识峰会,由 Aleo 的 Pratyush Mishra 介绍

2.3 与PoW挖矿相比

虽然将 ZKP 视为一种新形式的 PoW 并将加速硬件视为一种新型矿机是很自然的,但 ZKP 生成在目的和市场结构方面与 PoW 挖矿有根本不同。

2.3.1 权力竞争与效用计算

为了赚取区块奖励和交易手续费,比特币矿工通过迭代随机数来寻找足够小的哈希值,这实际上只与共识有关。 相比之下,ZKP 生成是实现信息压缩或隐私保护等实用性的必要过程,而不负责达成共识。 这种区别影响了 ZKP 潜在的广泛参与和奖励分配模型。 下面我们列出三种现有的设计来说明矿工将如何协调 ZKP 的生成。

这些协调的设计中的每一个都有不同的重点。 我们预计 Aleo 的去中心化度最高,Hermez 的效率最高,Scroll 的参与门槛最低。 但基于上述设计,零知识硬件军备竞赛不太可能很快发生。

2.3.2 静态算法和进化算法

零知识证明 比特币_比特币分叉对比特币的影响_比特币分叉会影响比特币价格吗

另一个区别是比特币基于单一的、相对静态的算法。 比特币核心开发人员一直试图遵循最初的设计和精神,以保持网络稳定并避免严重的分叉。 新兴的区块链或项目没有这样的历史局限性零知识证明 比特币,这使得它们可以更灵活地调整系统和算法。

我们认为,与简单静态的 PoW 市场相比,ZKP 的不同之处在于更加去中心化和动态的市场结构。 我们建议将 ZKP 生成视为一种服务(一些初创公司将其命名为 ZK-as-a-Service),其中 ZKP 生成是达到目的而不是目的的手段。 这种新范式最终将导致新的业务或收入模式,我们将在最后一节中详细介绍。 在此之前,让我们先看看多种解决方案。

3.解决方案

CPU(中央处理器)是通用计算机中的主要芯片,负责将指令分发给主板上的各个部件。 但是,由于CPU的设计目的是快速处理多个任务,这限制了处理速度,因此在处理并发或某些特定任务时,GPU、FPGA和ASIC常常被用作助手。 在本节中,我们将重点介绍它们的特点、优化过程、现状和市场。

3.1 GPU:目前最常用的硬件

GPU 最初设计用于操纵计算机图形和处理图像,但其并行结构使其成为计算机视觉、自然语言处理、超级计算和 PoW 挖矿等领域的良好选择。 GPU可以加速MSM和FFT,特别是对于MSM,通过使用称为“pippenger”的算法,开发GPU的过程比FPGA或ASIC简单得多。

在 GPU 上加速的想法非常简单:将这些计算量大的任务从 CPU 卸载到 GPU。 工程师会将这些部分改写成CUDA或OpenCL。 CUDA 是 Nvidia 开发的并行计算平台和编程模型,用于 Nvidia GPU 上的通用计算。 CUDA的竞争对手是Apple和Khronos Group开发的异构计算。 提供标准OpenCL,让用户不再局限于NVIDIA GPU。 然后这些代码被编译并直接在 GPU 上运行。 为了进一步加速,开发人员还可以:

(1) 为了降低数据传输成本(尤其是 CPU 和 GPU 之间),通过使用尽可能多的快速存储和较少的慢速存储来优化内存。

(2) 为了提高硬件利用率,尽可能让硬件满负荷工作,通过更好地平衡多处理器之间的工作,构建多核并发,为任务合理分配资源,优化执行配置。

比特币分叉会影响比特币价格吗_零知识证明 比特币_比特币分叉对比特币的影响

简而言之,我们希望尽最大努力使整个工作流程并行化。 同时,尽量避免后项依赖前项结果的顺序执行过程。

通过并行化节省时间

零知识证明 比特币_比特币分叉会影响比特币价格吗_比特币分叉对比特币的影响

GPU 加速设计流程

3.1.1 庞大的开发者群体和开发便利性

与 FPGA 和 ASIC 不同,GPU 开发不涉及硬件设计。 CUDA 或 OpenCL 也有一个庞大的开发者社区。 开发者可以基于开源代码快速构建自己的修改版本。 例如,Filecoin 早在 2020 年就发布了第一个带有 GPU 的网络。Supranational 最近也开源了他们的通用加速解决方案,这可能是目前同类开源中最好的解决方案。

当考虑超越 MSM 和 FFT 的工作时,这种优势更加明显。 Proof generation确实主要是这两项占主导,但其他部分还是占了20%左右(来源:Sin7Y的白皮书),所以只加速MSM和FFT对缩短proof time的效果有限。 就算将这两项的计算时间压缩到一瞬间,耗费的总时间依然只有原来的五分之一。 此外,由于这是一个新兴和不断发展的框架,因此很难预测该比率在未来将如何变化。 鉴于 FPGA 需要重新配置,ASIC 也可能需要重新设计以进行生产,因此 GPU 更适合加速异构计算作业。

3.1.2 剩余 GPU

Nvidia 主导着 GPU 市场。 根据 Jon Peddie Research 的数据,Nvidia 的独立 GPU 出货量将在 2022 年第一季度占市场的 78%。显卡的可用性继续增加,尽管许多定价明显高于 MSRP(制造商的建议零售价)。 2021 年,GPU 出货量将超过 5000 万个(价值 520 亿美元)。 从这个数字来看,这几乎是同期FPGA销售额的8.5倍。

GPU芯片市场份额

比特币分叉对比特币的影响_比特币分叉会影响比特币价格吗_零知识证明 比特币