本文作者为 Chapter One 研究员 @varunshenoy_,文章由 DeFi 之道进行编译整理:
零知识证明 (ZKP) 将彻底改变我们对隐私和扩容计算的看法。
这项技术的发展才刚刚开始。
本文是 ZKP 快速入门指南,将从非技术角度带你了解什么是 ZKP。
尽管 ZKP 最近才在加密货币领域流行起来,但这项技术有着悠久的历史。
1987 年,@JamesGleick 在《纽约时报》发表了一篇题为《保护秘密的新方法被发现了》的文章。
甚至在区块链出现之前,Gleick 就描述了 ZKP 的可能用途,例如保护信用卡号码和军事访问代码。
文章中提到的几位研究人员在几十年后因其在密码学方面的成就而获得了图灵奖。
缺乏软件工具、快速硬件和替代选项阻碍了 ZKP 的发展,导致其直到现在才成为主流。
这类似于计算和软件的进步促进了神经网络蓬勃发展,尽管这些算法已经存在了一段时间。
那么 ZKP 是如何运作的呢?这涉及很多群体理论和工程学问题,我们留到下次再说。
今天在这里,我们只需要将 ZKP 看作是一个黑匣子,可以用它来证明你知道一些信息,但同时不需要泄露黑匣子里的内容。
此外,即使相关的计算需要很长时间才能完成,ZKP 也可以非常快速地得到验证。
举个例子:
Alice、Bob 和 Carol 正在聊天。Alice 问 Bob 一个问题,但不想让 Carol 知道答案。Bob 可以用 ZKP 进行回应,这将证明他知道答案而无需透露答案本身。ZKP 只会输出 True 或 False,从不撒谎。
再回到我们今天的主题,ZKP 承诺了三个用例:
1.保护用户隐私
2.实现了新的透明度
3.一个验证分布式计算的新范式
让我们一一展开叙述。
保护用户隐私
来看看目前最流行的智能合约区块链。
以太坊上的所有交易都是公开的。如果世界金融系统在一夜之间转移到以太坊,你可以看到每个人的工资、交易以及他们与谁互动。
这是个非常严重的问题!
想象一下,如果你所有的 Venmo(类似支付宝的支付工具)交易都是公开的——就像以太坊一样。
这些交易不仅仅是你和朋友之间 AA 一顿午餐,还包括向你在受制裁的国家生活的家人汇款或者支付医疗费用。
借用 @jswihart(Zcash 背后公司 ECC 的成员)的一句话:如果你不把它发布出去,你就不应该让它出现在区块链上。
但在 Venmo 上,你可以选择将某些交易设为私有。
ZKP 允许区块链参与者灵活选择他们想要披露和隐藏哪些交易。
考虑到这些问题,像 Zcash 和 Monero 这样的 Layer1 区块链默认使用 ZKP。它们的核心是抵抗审查支付机制。
金融机构可以在不泄露回报率的情况下进行加密投资。
与国会议员的投资法类似,ZKP 可以将投资隐藏一段时间,然后通过智能合约在链上显示。
与此同时,ZKP 的应用不仅限于加密货币。
密码学家 @WatsonLadd 说过,Cloudflare 可以通过 ZKP 来使用硬件安全密钥进行更私密的用户身份验证。
这是一家服务于数百万个网站的上市公司!
就像加密投资者 Katherine Wu 在 Coinbase 的播客节目中所说:比特币是可编程的货币,就像 ZKP 是可编程的隐私一样。
这是一个全新的概念!
新的透明度
ZKP 还可以实现全新的财务透明度。
公司可以选择性地公开某些付款以允许审计跟踪,同时隐藏有关机密客户、员工工资、承包商、供应商和投资的信息。
此外,金融实体必须向世界提供偿付能力证明。
每隔几周,监管机构就会要求银行发布一份 ZKP,向所有人证明他们持有的资产价值超过了负债。
一个验证分布式计算的新范式
现在,让我们看一下可验证计算中的 ZKP。
如果你想将一项艰巨的任务卸载到更适合的机器上怎么办?但是那台机器是由第三方运行的,你可能不相信那台机器的结果,那怎么办?
你可以要求机器提交 ZKP!
目前区块链的一个大问题是扩容。其中一种解决方案是使用 rollups。
区块空间是昂贵的。ZK-rollups 将原本在主链上的计算转移到更便宜的计算环境中。
最后,只有一段较短的 ZKP 被放到主链上。
目前也有 Layer1 区块链通过 ZKP 的简洁性进行扩容,例如 Mina。
想象一下整个区块链的状态存储在跨节点共享且并行更新的一组 ZK 证明上,这会是什么感觉?你可以在几秒钟内设置一个新的节点!
ZKP 面临的挑战
但是天下没有免费的午餐。ZKP 有什么问题?为什么现在才开始发力?
因为还有其他选择。
例如,optimistic rollups(Arbitrum 和 Optimism)为已经在主网上的 zk-rollup 提供了更具可扩展性的选项。
一旦我们达到 ZKP 验证器速度更快,Zk-rollups 就超越了其他选择。
ZKP 涉及复杂的计算,其中许多在以前的计算中是不需要的。这使得硬件成本昂贵。
例如:在以太坊上验证单个 ZKP 的成本可能高达约 500 K gwei。
出于类似原因,ZKP 验证的成本也可能很高。
工程师们正在两个方面努力解决这些问题。
1. 为 ZKP 设计更好的定制硬件。
2. 为 ZKP 构建性能更高(且更易于使用)的软件和工具。
这两个拐点为 ZK 的未来提供了完美的条件。
Georgios Konstantopoulos(Paradigm 研究合伙人)正在使用 FPGA 和 ASIC 探索 ZKP 的硬件加速。
Ingonyama(研究 ZK ASIC 的项目)拥有在 AWS 上使用 FPGA 的完整工具包,可实现更便宜、更快的 ZK。
Aleo 和 Starkware 正在构建更好的工具和语言来构建 ZK 电路。
总而言之:
ZKP 在用户隐私方面提供了一层新的可选性。
分布式计算的未来将依赖 ZKP 以去信任化的方式将密集的工作卸载给第三方。
ZKP 开发者工具仍然是新的。现在是开始 BUIDL 的最佳时机。