V神定调:zk-SNARKs与零知识证明未来十年非常重要
V神在EDCON大会上表示,未来十年zk-SNARKs将与区块链同等重要。作为一种零知识证明系统,它允许证明者向验证者证实信息而不泄露具体内容,已用于Zcash等隐私币和Filecoin存储验证,能有效提升隐私性与可扩展性。
V 神在黑山 EDCON 大会上提出过一个观点:未来十年,zk-SNARK 这项技术的重要性足以与区块链本身相提并论。那么,zk-SNARK 究竟是什么?本文会用通俗易懂的方式拆解它。内容参考自 Phemex 上的一篇入门文章,由白话区块链编译整理。
长期以来,区块链一直面临一个难以回避的难题——可扩展性、去中心化与安全性三者很难同时做到最优。以太坊在安全和隐私方面已经表现不错,剩下的主要问题便是扩容。
于是,Layer 2 方案应运而生。而在现有的 Layer 2 技术路线中,V 神始终将 ZK 技术视为解决扩容的终极方案。
2023 年 5 月,他在黑山举办的 EDCON 大会上再次表态:「未来 10 年,基于 ZK 技术的 zk-SNARK 会和区块链一样重要。」
那么,V 神如此看好的 zk-SNARKs 到底是什么?它能帮区块链解决哪些长期存在的难题?今天这篇文章就来聊聊。
下面进入正题:
zk-SNARKs 到底是什么?
1. 谁提出来的?
「zk-SNARKs」这个词最早由一批密码学研究者提出,包括 Nir Bitansky、Alessandro Chiesa 和 Eran Tromer。他们在论文中阐述了 zk-SNARKs 的基本原理。此后,不同团队和项目陆续对这项技术进行了改进和应用落地。
2. 名字拆开看,每个字母代表什么?
– ZK:zero knowledge,零知识
零知识的意思是,验证声明的人在整个验证过程中不会获得任何额外信息。简单来说,验证者只知道这个陈述是对还是错,除此之外一无所知。
– S:succinct,简洁
简洁指的是 zk-SNARKs 的证明非常简短,验证速度很快,不像传统零知识证明那样冗长复杂。通常只需几毫秒就能验证一个 zk-SNARK 证明。
– N:non-interactive,非交互式
非交互意味着证明者和验证者之间不需要来回沟通。证明者只需发送一条消息,验证者就能确认结果。这与需要多次往返的交互式证明截然不同。
– AR:argument,论证
论证是指支持某个观点的一组理由。在 zk-SNARKs 中,论证是一串数学运算,用于证明一个陈述是正确的。
– K:knowledge,知识
知识指的是证明者知道完成证明所需的某些秘密信息,比如账户的私钥。
总结一下,zk-SNARKs 是一种零知识证明系统。它允许一方(证明者)向另一方(验证者)证明某些事情,例如身份、资金所有权等,但无需透露这些资产的具体信息。举个例子:
- 用户要证明自己账户余额足够支付某样东西,但不用说出具体有多少钱;
- 用户登录某个应用时,要验证身份,但不用提交自己的个人数据。
用一个「如何向 5 岁小孩解释 zk-SNARKs」的比喻来帮助理解:
假设你和三个朋友在玩「找语文老师」的游戏,奖金 1000 美元,赢了大家平分。你们围着桌子坐,每人拿到一张有语文老师的图片。你要在图片里找到语文老师,然后证明你找到了,但不能透露她的位置或其他任何信息。换句话说,你只让对方知道「我找到了」,但不能让对方知道更多。
用 zk-SNARK 的思路,你可以拿一张跟图片一样大的纸,在语文老师的位置上点一个点,然后把这张纸藏进盒子里。等你的朋友也解出谜题后,他们可以自己打开盒子看到你点的位置,从而确认你确实找到了。
所以,zk-SNARKs 可以让你证明「你知道某个信息」,但不用把这个信息的具体值说出来。在当前的多链生态中,许多平台利用 zk-SNARKs 来保护链上应用和 DApp 的隐私。
核心点在于:验证者不可能从证明本身获得任何额外信息——这就是「零知识」的来源。
zk-SNARKs 是怎么工作的?
zk-SNARKs 在区块链领域尤其重要,因为大多数公链是公开的,隐私问题因此变得突出。
最知名的例子是 Zcash,一种注重隐私的加密资产。在比特币或以太坊这类公链上转账 Zcash 时,验证过程会涉及发送方、接收方地址以及输入输出的金额(花了多少、还剩多少)。
但借助 zk-SNARKs,Zcash 可以在不公开地址和金额的情况下,照样证明交易有效。

图片说明:Zcash 利用 zk-SNARKs 为加密用户提供隐私层 来源:Blockchainhub.net
那么 zk-SNARKs 到底如何运作?核心在于数字签名。数字签名利用加密算法将敏感信息隐藏起来,同时向对方提供必要的验证证据。
具体流程如下:
- 证明者先生成一对密钥:一个公钥,一个私钥。然后用私钥对交易签名。
- 接着,证明者将这个交易编码成 zk-SNARKs,也就是一个能证明交易有效的数学证明。
- 这个证明连同公钥一起发送给验证者。验证者用公钥检查公式是否正确,但无需知道交易的任何其他信息。由于只验证少量数据,整个过程非常迅速,就能确认交易有效。
zk-SNARKs 的实际应用场景
1. 哪些币用了 zk-SNARKs?
利用 zk-SNARKs 来增强隐私的加密资产,通常被称为隐私币。常见的例子有:
– Zcash (ZEC)
– Verge (XVG)
– Monero (XMR)
– Dash (DASH)
– Beam (BEAM)
– Horizen (ZEN)
– Bytecoin (BCN)
需要注意的是,zk-SNARKs 有一个潜在风险:如果私钥泄露,他人就能伪造证明。这可能导致有人利用假隐私币进行欺诈。
2. 除了隐私币,还能做什么?
Filecoin 是一个去中心化存储项目,其运作涉及多个环节。
一方面,存储提供者(靠提供存储空间获取区块奖励)需要证明自己确实正确保存了数据。他们是「证明者」。
另一方面,节点(「验证者」)需要确认存储提供者确实在妥善保存数据。验证者必须对存储提供者提供的证明感到满意。
可以想象,如果数据频繁交接,这个过程会非常消耗资源。
Filecoin 官方博客曾写道:
「要验证存储,目前单个存储提供者需要提供的证明数据量已经很大,而且只会越来越多。Filecoin 网络的出块时间是 30 秒。要保持这个时间不变,同时让验证方法可以扩展,Filecoin 需要一个快速、高效、稳健的验证方案。」
通过使用 zk-SNARKs,Filecoin 能够减少各方验证存储所需的时间,从而提升可扩展性和效率。对存储提供者来说,zk-SNARKs 降低了需要传输的数据量,进而节省运营成本。
3. 其他可能的用途
例如:
- 身份验证:无需密码即可验证用户身份,甚至不需要护照、出生证明等文件,能保护出生地、生日等敏感信息。
- 投票系统:在不暴露身份的情况下验证选民资格,即使选票泄露也无法追溯到具体选民,隐私性很强。
- 数据压缩:这是 zk-SNARKs 一个很有趣的应用,值得单独介绍。
小结
总的来说,zk-SNARKs 有三个核心要点:
- 它是一种零知识证明系统,允许一方证明自己知道某个值 x,但无需透露关于 x 的任何额外信息。
- 关键在于,验证者从证明本身推导不出任何关于 x 的信息。这保护了证明者的数据隐私。
- 零知识证明系统被广泛应用于安全通信、密码学、隐私保护的数据分析等多个领域。
目前零知识证明技术仍属于较新的研究领域,还有许多问题有待解决,例如实用性的程度。不过,已经出现了一些令人印象深刻的产品。
风险声明:本文内容仅供学习参考,不构成任何投资建议、交易建议或收益承诺。加密货币及迷因币市场波动较大,价格预测和市场数据请以官方公告、交易所实时页面及行情平台为准。投资者应独立判断、谨慎决策,自行承担投资风险。
