原文:《「CN」ABCDE:为什么我们要投资 Cysic?》
撰文:SiyuanHan
Cysic 是行业领先的 ZK 硬件加速项目,致力于设计先进的 ASIC 芯片来帮助减少 ZK 证明生成时间。Cysic 组建了一流的硬件设计研发团队,目前已经完成了基于 FPGA 的 POC 设计工作。根据 POC 结果可以证明 Cysic 的 ZK 硬件加速能力已经处于行业领先的位置。
ABCDE 于 Seed 轮投资了 Cysic,同时本轮的投资机构还有 Polychain、A&T、Hashkey,以及 Web3.com Venture。
为什么我们需要 ZK 硬件加速
ZK 证明的生成 (ZK Proof Generation)是在 ZK 项目中最核心步骤之一。不幸的是,在现有的 ZK 证明系统下,生成 ZK 证明通常需要大量的计算。随着项目的复杂度的升高,ZK 电路规模的增大,ZK 证明生成需要的计算量会指数级上升。例如,对于 Scroll, zkSync 等大型 zkEVM/zkVM 项目,如果其完全通过 CPU 来生成 ZK 证明,可能会需要数小时,甚至数天的计算。在实际业务中,大多数项目需要将ZK 证明的生成限制在数秒和数分钟内。数小时或者更久的计算时间对于大部分 ZK 项目,尤其是对于 zkEVM/zkVM 等扩容类项目来说是完全不可接受的。
此外,ZK 证明的生成的计算复杂度在未来 ZK 项目正式上线前的 2 年左右的时间窗口内,难有从理论层面降低的可能性。因此,为了保证项目的可用性,在项目正式上线前,ZK 项目方必须采用「加速 ZK 证明生成」的技术方案,将ZK 证明生成加速到秒级或者分钟级。而通过高性能硬件加速 ZK 证明生成的方式是目前的首选。
硬件加速了什么?
在 ZK 证明生成的过程中,主要耗时的计算可以分为两种类型,1. 基于多项式的NTT (Number Theoretic Transform)计算和 2. 在椭圆曲线上进行的MSM (Multi-Scalar Multiplication)计算,如下图所示[1]。通常来说,在一次 ZK 证明生成的计算中,NTT 类型的计算任务约占到全部计算任务的 25% 左右,MSM 类型的计算任务约占到60–70 %左右[2]。
幸运的是,这两种类型的计算任务存在:1. 逻辑相对简单,2. 大量重复相同的计算逻辑,3. 可并行的特点 ( 类似 Bitcoin Mining 计算 )。因此,使用高性能硬件加速这两类计算是理论上可行的。
如下图所示,我们可以发现 NTT 计算 ( 左上部分 ) 和 MSM 计算 ( 右边 ) 在 ZK 证明生成的工作流中轻耦合的。因此,ZK 项目方可以根据实际需求选: 1. 单独加速 NTT 计算 或 2. 单独加速 MSM 计算,或者 3. 整体加速 NTT 和 MSM,三种方案。
General ZK 证明生成过程的 Workflow [1]
注 1: 上图来自于 Scroll co-founder Zhang Ye 的论文: PipeZK: Accelerating Zero-Knowledge Proof with a Pipelined Architecture。这是行业中最早研究 zk 硬件加速的论文之一。 注 2: 在某些文献 / 文章中声称 ZK 证明生成最耗时的是 FFT (Fast Fourier Transform) 和 MSM 两种。虽然 FFT 和 NTT 原理相似,但是由于 ZK 的中涉及到的密码学计算多是在有限域 (Finite Field)上进行的,因此在实际中的计算应为NTT。因此我们以多数学术文章中采用的 NTT 为准[1][2][3]。
使用什么硬件加速?
与挖矿的解决方案相同,目前 ZK 硬件加速的方案主要通过下面三种硬件实施:
GPU FPGA ASIC
目前,市面上可用的硬件加速方案主要有 GPU 和 FPGA 两种。使用 GPU/FPGA 的加速方案相对容易实现。因此,为了更快的抢占市场,大部分厂商都会首先实现 GPU/FPGA 的方案。由于 GPU 和 FPGA 的硬件成本较高,功耗相对大,绝对性能也有限制。因此 ASIC 方案是 ZK 硬件加速生态中不可忽视的一环。
硬件加速如何服务 ZK 项目方
ZK 硬件加速提供商可以通过两种方式提供 ZK 证明生成加速服务:
通过 SaaSAPI。 通过销售硬件 ( 整机 / 芯片 ) 来提供加速服务 ( 类似卖矿机 )。