Vitalik Buterin在2024香港Web3嘉年华上探讨如何提高zk-snark的效率,以弥补目前区块链发展中牺牲隐私性和可扩展性的缺陷。他提出三个方向来实现“实时证明”,包括并行化和聚合、硬件设计改进和算法改进。其中,SNARK ASIC是一种定制化的硬件,可以加速SNARK计算过程。目前市场上有多种知名项目,如Cysic、Ingopedia、Supranational、Ulvantanna和Auradine。
原文作者:夫如何
原文来源:Odaily星球日报
2024 香港 Web3 嘉年华期间,以太坊联合创始人 Vitalik Buterin 发表演讲《Reaching the Limits of Protocol Design》。在本次演讲中,Vitalik 就如何提高 zk-snark 的效率展开阐述。
在演讲中,Vitalik 指出目前区块链的发展是以牺牲隐私性和可扩展性为前提的,zk-snark 所具备的属性能够对牺牲的隐私性和可扩展性进行补救。但目前 zk-snark 效率较低,在以太坊中,以太坊节点验证一个区块所需时间,约为 400 毫秒,而 zk-snark 验证一个以太坊区块的时间约为 20 分钟,这导致网络虽然具备隐私性和可扩展性,但运行时间却延长 3000 倍。所以想将 zk-snark 运行到现有区块链网络中,需要提供一种“实时证明”,如果证明生成时间降低,那么在保证区块链运行速度的同时,也能提升隐私性和可扩展性。
什么方法能够实现“实时证明”?为此Odaily星球日报将根据 Vitalik 在演讲中所提供的思路进行解析,并对相应方案的项目进行简短介绍。
在此之前,先科普一下 zk-snark,zk-snark 全称为简洁的非交互式零知识证明,为了更好的理解,我们分开解释:
以下是 zk-snark 的运作流程图。从图中对 zk-snark 进行简单解读:
通过上述以 Zcash 的 zk-snark 相关流程介绍,不难发现,zk-snark 在验证证明时,所产生的步骤别不多,同时根据 zk-snark 的特性来看,验证所耗时间并不多,根据相应的 zk-snark 相关统计,验证证明时间一般不超过 80 毫秒,那么影响 zk-snark 成为公链的运行阻碍的原因在于证明者提供的证明。
上图为目前比较主流的 zk-snark 相关技术的汇总,从中不难发现,证明的大小、证明生成时间,验证时间是衡量有关 zk-snark 技术的标准。抛开验证时间来看,大多数 zk-snark 的证明无论从证明大小和生成时间来看,都与本文起始部分,Vitalik 用以太坊为例的标准不符,值得注意的是,上述大多数技术的所在公链并不具备智能合约的功能,也无法与以太坊区块大小相提并论,所需证明尺寸和证明生成时间要求更高。
为此,Vitalik 在本次演讲中对 zk-snark“实时证明”的实现,提供三个解决优化方向。
Vitalik 提倡第一个解决方向——并行计算和证明聚合,需要对相关公链和 zk-snark 运作流程进行优化,例如此前 zk-snark 算法中 Plonk 算法的递归属性,不过并行计算和证明聚合目前并未有更好的解决方案可以解决相应问题。
至于算法改进,目前在 zk-snark 领域,从性能上来看,主流依旧是 Groth 16 算法,随后出现的 zk-snark 算法多是为解决可信设置问题,在运行速度和证明生成时间上并无更多进展,并且 zk-snark 算法中,可信设置约简单,运行速度越快,但安全性也越差。为此以安全性为前提,zk-snark 提升速度还需持续建设。
上述两个解决方向主要以理论为支撑,这需要很长时间才能有所突破,那抛开理论,能否通过其他方式快速实现“实时证明”吗?硬件设计改进或许是达成目标的最佳捷径。
从前文关于 zk-snark 性能的内容中,不难发现,真正限制 zk-snark 性能在于证明的生成,其中证明大小和电路规模决定证明生成时间。目前,大多数项目的复杂度越来越高,其证明大小和电路规模也在不断提升,生成证明的算力也在不断增加,为此 ZK 硬件加速项目应运而生。
ZK 硬件加速主要在证明生成中的多项式类型 NTT 任务和椭圆曲线 MSM 任务提供算力支持,主要这两项任务的运行逻辑简单,且大部分计算逻辑重复,并且可以进行可并行计算。
ZK 硬件和挖矿硬件相差不大,依旧是 GPU、FPGA 以及 ASIC 三种。不过 ZK 硬件加速领域目前比较常见的是 GPU/FPGA 方案,该方案比较容易实现,相关配件更易获取,不过相比于前两者,ASIC 潜力更大,也是 ZK 硬件加速领域目前增长点之一。
目前 ZK 硬件加速项目采用两种方式为相关 ZK 项目提供算力服务,包括硬件出售和 SaaS 算力服务。硬件出售顾名思义,和比特大陆一样出售矿机;SaaS 算力服务,更像提供一个算力市场,ZK 项目可以在市场上购买算力来帮助项目生成 ZK 证明。
目前 ZK 硬件加速领域比较小众,若不是 Vitalik 在演讲中提到,想必大多数人并不太清楚有哪些项目存在。为此Odaily星球日报对该板块项目进行整理,板块项目较少,其中Cysic、Ingopedia、Supranational、Ulvantanna以及Auradine为目前较为知名的项目。
其中 Cysic 目前关注度较高,其推出 FPGA/ASIC 硬件加速在算力性能上较为突出,同时还有算力市场为客户提供算力支持服务;Auradine 比较综合,其主推的是比特币矿机,同时提供相应 ZK 算力硬件,不过 ZK 硬件并不是其主打产品;Ulvantanna 主打利用 FPGA 集群为 ZK 项目提供算力支持,值得一提的是,Web3知名资本 Paradigm 是其投资者;Supranational 项目比较奇特,推特和官网的更新截止在去年 5 月,不确定目前是否运行;Ingopedia 提供基于 GPU 和 FPGA 两种硬件加速服务。