为什么zkSnark在Vitalik眼中有那么牛

作者:NingNing来源:twitter2023-05-24

注:本文来自@0xNing0x 推特,其是独立分析师,原推文内容由MarsBit整理如下:

知道ZkSnark牛 ,但为什么在Vitalik眼中有那么牛?

1关于ZkSnark,顶级玩家与市场存在认知差

食物链顶层玩家与市场共识的认知差,是长期投资者Alpha收益的一个重要来源

目前市场的普遍认为ZkSnark只是一种区块链的二层扩展技术,处于从属地位。然而,Vitalik却在黑山以太坊开发者峰会上说,未来10年ZkSnark将于区块链并驾齐驱

Vitalik与市场对ZkSnark存在着相当大大的认知差,而这个认知差会为我们创造巨大的Alpha收益

Vitalik

2什么是ZkSnark,ZkSnark与ZkStark有何区别?

这个问题,我们交由ChatGPT来回答

ZkSnark(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge)和ZkStark(Zero-Knowledge Succinct Transparent Argument of Knowledge)都是用于实现零知识证明(Zero-Knowledge Proofs)的密码学技术,但它们之间存在一些区别。

交互性:ZkSnark是非交互式的证明协议,即证明者只需生成一个证明,然后验证者可以在不需要与证明者交互的情况下进行验证。而ZkStark是交互式的证明协议,需要多个轮次的交互才能完成证明和验证的过程。

可验证的可扩展性:ZkSnark在生成证明时,生成的证明的大小是固定的,不依赖于要证明的语句的规模。这使得ZkSnark在可验证的可扩展性方面表现得很好。相比之下,ZkStark的证明大小与要证明的语句的规模成正比,这意味着随着要证明的语句规模的增长,证明的大小也会增加,导致可扩展性相对较差。

透明性:ZkSnark的证明是非透明的,也就是说,验证者不能从证明中获取到有关证明过程的详细信息。与之相反,ZkStark的证明是透明的,验证者可以从证明中直接获得关于证明过程的详细信息,这使得ZkStark在可审计性方面具有优势。

安全性假设:ZkSnark的安全性建立在复杂的数学假设上,如零知识假设和特定的双线性对假设。相比之下,ZkStark的安全性建立在更强的假设上,如哈希函数的预图难题。

综上所述,ZkSnark和ZkStark在交互性、可验证的可扩展性、透明性和安全性假设等方面存在差异。选择使用哪种技术取决于具体的应用场景和需求。

Vitalik

3对于ZkSnark与ZkStark有何区别,ChatGPT给出的答案有点抽象,我这个人工人工智能给出的答案如下:

--ZkSnark与ZkStark相比,它在零知识证明的过程中,引入了哈希函数和密钥生成器,其中密钥生成器由一个密钥生成函数+一个保密“Lambda”值组成

以太坊基金会正在举行的KZG仪式正是为了完成EIP4844协议的Blob数据扩展生成“Lambda”值

--因为引入了哈希函数和密钥生成器,ZkSnark不再需要ZkStark的验证者(V)与证明者(P)的多轮交互,而且因为哈希函数输出值为固定长度,又赋予了ZkSnark的ZKP(ZK证明)长度固定体积小的特性

Vitalik

4因为以上的技术特性,在生成ZKP时和ZK验证过程中,ZkSnark需要消耗的计算资源要比ZkStark更少

另外,ZkSnark生成的ZKP长度固定,而ZkSnark则不固定

以上因素使得ZkSnark具有简洁性、高效性、隐私保护和互操作性的优点

但由于需要一个仪式生成“Lambda”值,在安全性上弱于ZkStark

ZkSnark比ZkStark早6年开发,最早的一个实例为区块链1.0时代的隐私币Zcash

进入区块链2.0时代后,ZkSnark主要应用场景从隐私转为区块链二层(L2,layer2)扩展,知名的实例有路印协议、ZkSync、Aztec、Scroll等等

理论上由于需要计算资源较少和ZKP长度固定且体积小,采用ZkSnark方案的L2链的gas费会低于采用ZkStark方案的L2链,这就是为什么Zksync Era的gas费比ZkStark低的一个重要原因

非知名的实例有基于Gnosis链(原xDAI链)的星际主题链游 Dark Forest(黑暗森林),游戏玩家有Vitalik和Matt Huang

Vitalik

5回到最开始的问题,为什么在V神眼中ZkSnark可以与区块链等量齐观呢?

区块链与ZkSnark解决的其实是同一个问题,即Alice如何向Bob证明她拥有某物

区块链的解决方案是分布式账本+共识机制,ZkSnark的解决方案则是通过密码学计算

区块链的实现方式是分布式的冗余系统,ZkSnark的实现方式是集中式的效率系统

正因为这一点,区块链与ZkSnark天然具有耦合性,区块链可以将事务和状态的证明外包给ZkSnark,而自身专注于数据可用性和最终确认性,这样理论上就可以巧妙地化解区块链的不可能三角,实现区块链的指数级扩展,从而为未来10年的Web3大规模采用准备好基础设施

我想正是从这个意义上,ZkSnark可以与区块链相提并论,可以与区块链一起被看做是Web3基础设施的两根支柱

以上。

Vitalik