原文:《Criticism on ZK》by msfew
*注:首先,这是一个用一个小时写的草稿。 主要是为了快速收集信息,所以可能存在非常多的潜在错误和不完整的信息。
对 ZK 的主要批评包括两个:
一是证明时间长 (因此有各种 benchmark、各种新的 ZK 协议和各种硬件优化);
一是系统和应用程序安全性仍然需要测试。
零知识证明是区块链领域非常流行的技术。 由于链上计算资源稀缺且昂贵,零知识证明允许这些计算在链下进行,虽然链下证明生成的总时间消耗非常高,但它仍然压缩了最终证明和相关的计算验证,从而允许计算“在链上”。
ZK 证明生成时间过长的问题往往被研究者和开发者所忽视,因为这本质上是 ZK 需要做出的权衡。
Coinbase首席财务官:上线资产前会从技术和风险角度进行评估:金色财经报道,今日在美国国会的加密听证会上,在众议员Pete Sessions询问交易所如何识别欺诈和降低风险时,Coinbase首席财务官Alesia Haas表示,该交易所在资产上市之前会从技术和风险的角度对其进行评估。[2021/12/9 12:59:42]
虽然他们没有直接批评 ZK 的这个缺点,但是他们有很多从对面解决这个缺点的方法和讨论。
也就是说,他们通过提出各种解决方案并进行大量基准测试来隐含地谈论 ZK 的极长证明时间。
在衡量 ZK 应用之前,我们首先要测试 ZK 协议底层 commitment 的性能。
因为比如,FRI 导致 STARK,KZG 导致常规 SNARK,IPA 导致 Bulletproof 。 底层承诺的性能测试对于 ZK 应用的性能并不直观,但对于理解 ZK 证明时间长的问题很有帮助。
李贝宁:从技术角度看Filecoin还处于成长期:金色财经现场报道,7月6日,由杭州市余杭区政府指导,杭州未来科技城管委会、巴比特主办的2020杭州区块链国际周在杭州举办。在主题为《颠覆云存储,IPFS引领新一轮数字革命?》的圆桌上,江西正舵者网络科技有限公司CTO李贝宁表示,从技术角度看,Filecoin还处于成长期,很多方面还有待发展。我的观点是,大家短期高估了它的能力,长期低估了它的潜力,Filecoin要建立的是全球性的分布式存储网络,所以不要过度关注短期FIL的价格。[2020/7/6]
从上面的链接我们可以看出,这些底层承诺协议不仅计算复杂 (可能导致证明时间长),而且还存在内存消耗非常大的问题。
当然,内存消耗其实更多的是跟硬件配置要求有关,这跟我们今天要讨论的话题是不一样的。
对于具体的 SNARK 性能测试,a16z crypto 将它们分为前端和后端:
声音 | 王和:未来区块链将从技术的范畴走向社会的范畴:12月5日,第四届智能金融国际论坛暨2019金融界“领航中国”年度盛典在北京盛大召开,逾千位精英学者、数百家金融机构共同聚首,探讨中国和世界的“大变局、大视野、大未来”。在圆桌讨论“新技术 新革”上,中国人民财产保险公司原监事长王和参与讨论。当前区块链具有战略性的机遇,同样重要的是具备更多应用场景的就是5G技术,对此,王和表示,区块链技术到已经走过了十年。在中国基本上经历了三个阶段,首先是是2009年、2010年以比特币为代表的周期。第二个阶段是2016年至2018年,区块链迅速的走进大众视野,多种类数字货币出现。第三个阶段是从今年下半年,到2020年将开启的全新时代。关于区块链的未来,王和认为,未来区块链对于人类社会的影响,要比现在想象的更为广泛和深刻,未来也将迎来新一轮的区块链发展的新历史时期。 尽管区块链技术现在还面临的很多的瓶颈,但要有足够的信心、想象力和技术跨越这些困难。 最后,未来区块链和5G的结合,可能将给我们带来全新的概念:速度等于可能。数字经济时代,速度将成为一个国家的核心竞争力,5G无疑是速度的代表。[2019/12/5]
前端通常是 ZK 应用开发者接触到的 Cairo 语言/ zkVM 高级语言等;
声音 | 王春蕊:区块链已从技术构想走入现实 在智慧城市建设中将大有作为:新京报智慧城市研究院研究员王春蕊今日发表题为“智慧城市和区块链能擦出怎样的火花?”评论文章。文章中提到,区块链在智慧城市建设中将大有作为。区块链实现信息共享,保障数据安全;“区块链+政务”,为数字社会增信;“区块链+民生”,能够提供更智能的公共服务。区块链作为核心技术,已经从技术构想走入现实,在智慧城市领域特别是信息共享方面彰显出了巨大应用潜力。(新京报)[2019/11/5]
而后端是更接近 SNARK 证明生成时间的承诺等底层密码学操作。
其中,作者提到 SNARK 证明生成具有大约 100 倍的计算开销,并且每个 ZK 协议都有额外的开销,例如:
“In Groth16, P must work over a pairing-friendly group, whose operations are typically at least 2x slower than groups In Groth16, P must work over a pairing-friendly group, whose operations are typically at least 2x slower than groups that aren't pairing friendly. , this results in at least an additional factor-6 slow down relative to the 100-|C| estimate above.”
声音 | 李晓枫:建议从技术方面推进区块链标准化评测:新华财经消息,4月10日,“2019中国国际区块链技术与应用大会”在深圳会展中心召开,中国人民银行科技司原副司长李晓枫在本次活动上表示,金融和区块链有着天然的联系,目前区块链领域一链一应用、一链一联盟现象愈发明显,信息孤岛将成为区块链治理的重大挑战。因此,建议从技术方面推进区块链标准化评测,强化监管、完善法律法规,逐步建立适应区块链金融产业发展的长效机制。[2019/4/10]
总体而言,可以说 zk-SNARK 的额外性能开销在 200 - 1000 倍的范围内。
此外,文章还提到了 zk-SNARK 的其他限制,例如可信设置和内存使用。
Modulus Labs 的文章测量了一些 ZK 协议的实际性能。有些基准是针对参数数量的,这对我们来说不是很直观。然而,在应用中,文章提到在 Worldcoin 用例中,即使使用 “最快” 的 Plonky2,仍然需要几分钟的证明生成时间和数十 GB 的内存消耗,无法在个人电脑上运行。
为了减少证明生成时间,我们可以并行证明多个证明。
通常,有两种方法可以做到这一点:一种是批处理,另一种是递归。
简单来说,批处理是同时证明一批证明,最后将它们聚合在一起,而递归是在一个证明中验证其他证明。 一般而言,递归方法具有更小证明大小 的额外优势。
一些更常见的聚合方法包括 Halo2、Plonky2。他们每个人都以不同的方式执行批处理和递归,从而减少了证明时间。
除了ZK的协议层,ZK的应用层也可以有针对性的优化。例如,可以同时使用多个 ZK 协议 (STARK + SNARK ),或者针对宏观采取递归策略进行特定于应用程序的调优。
一般来说,这实际上减少了协议和证明分配方面的证明生成时间。 在探索新的 ZK 协议时,减少证明时间是最重要的考虑因素。
此外,从硬件角度进一步减少 ZK 应用在物理和节点层面的证明时间也做了很多努力。
首先,与前面提到的新协议一样,ZK 协议被设计为尽可能对硬件友好,例如 HyperPlonk。
Paradigm 提到,ZK 的证明生成速度慢主要是由于涉及大量的 MSM 和 FFT,它们对硬件不友好,导致由于随机内存访问等问题导致最终证明生成速度慢。 对于这些底层加密计算,ZK 协议需要在它们的组成和规模上进行一些权衡,以使其对硬件更加友好。
几家 ZK 硬件加速厂商表示,GPU 实际上是目前最经济和可配置的硬件选择,我们最终将有 FPGA 过渡到 ASIC 阶段。 根据 zk 硬件公司的说法,他们的第一版 ASIC 可以直接减少至少 30% 的 ZK 证明生成时间。
此外,由于不同的服务器配置,将不同的云服务器作为节点运行可能涉及不同的硬件特定优化。
ZK 现在的另一个批评是电路代码仍然需要正确 (没有 bug)。
如果 ZK 协议从健全性、完整性、零知识的角度受到攻击,我们将不再拥有有效的 ZK 系统。 我们可以在这个链接中看到各种角度的攻击示例。
虽然 ZK 应用可以被称为 trustless,但我们仍然需要确保项目的 ZK 协议和应用的代码和架构是正确的。 区块链领域中存在多种 ZK 错误。例如,由于 zkEVM 的 ZK 电路代码库庞大的问题,Vitalik 谈到了 ZK 应用程序的多证明者的需求。
因此,ZK 系统可能需要与形式验证等安全工具或 Ecne 等其他安全相关工具搭配使用。应用程序级别,它需要更多的审计,特别是对于像 zkEVM 这样的大项目。
深潮TechFlow
个人专栏
阅读更多
金色财经 善欧巴
Chainlink预言机
白话区块链
金色早8点
Odaily星球日报
欧科云链
BTCStudy
MarsBit
Arcane Labs
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。