一个伟大的魔术:a16z 合伙人谈理解零知识证明的新视角

魔术实际上是零知识证明,零知识证明与魔术没有区别。

撰文:Michael Blau,a16z 合伙人
编译:Luffy,Foresight News

科幻小说家 C. Clarke 有句名言,任何先进的技术都与魔法无异。类似科幻小说的领域之一就是零知识证明(ZKP),这是一种密码学工具,可以解决 Web3 中的两个关键挑战:可扩展性和隐私性。特别是,ZKP 可能是降低交易费用、设计新的隐私保护应用程序的关键,有望打开迎接十亿加密用户的大门。在加密货币之外,ZKP 有一天也可能在帮助安全传输敏感数据、打击非法金融或打击虚假信息等领域发挥作用。

但什么是 ZKP?对于工程师、研究人员和加密社区来说,有很多巧妙的解释,但它们并不总是适合在加密货币或计算机科学方面经验较少的受众。即使有大量的类比——从沃尔多到阿里巴巴的洞穴——要找到一个准确、易于理解的 ZKP 解释来充分体现其强大能力并不容易。

在这篇文章中,我结合了我在加密货币和魔术方面的背景来探索一个新的类比:将 ZKP 视为一个伟大的魔术。查看演示视频,并继续阅读关于 ZKP 定义属性的概述,你会了解所有这一切如何使用魔法发挥作用。

背景知识:什么是零知识证明?

我将首先分享 ZKP(特别是 zk-SNARK)的定义及其各种属性,然后将这些属性映射到魔法类比之中。

a16z 加密研究合伙人 Justin Thaler 这样定义 SNARK: 「zk-SNARK 让某人(称为证明者)向不信任方(称为验证者)证明他们知道一些数据,而无需透露有关数据本身的任何信息。」 或者,正如 MIT AIP ZK 课程所说,「零知识协议允许我向你证明我知道一个事实,而无需告诉你事实本身。」

这在公共区块链的背景下是令人兴奋的,因为 ZKP 可以同时保护隐私信息,同时允许任何人验证信息的真实性。zk-SNARK 简洁且省力:「简洁」意味着证明的数据大小小于所需证明的数据。「省力」意味着验证者验证证明比分析原始数据更快(在以太坊上,这意味着智能合约处理的数据更少,因此用户的 Gas 成本更低)。Layer2 区块链可以利用 zk-SNARK 的简洁性和节省工作量的特性,让去中心化应用程序以更低的成本处理更多数据。

综上所述,zk-SNARKs 有两个主要属性:

  • 隐私:您所证明的数据的任何内容都不会透露给验证者。

  • 简洁省力:验证证明比直接检查原始数据本身效率更高。

即使是这个高级描述听起来也有点像一个谜语:一个人如何能在不分享自己知识的情况下证明自己知道某件事?

让我们再次回顾一下这个定义……但这一次,使用一些魔法。

零知识证明魔术

简单来说,魔术就是零知识证明。在魔术表演中,魔术师声称知道一个秘密,可以让他们表演戏法。但他们不想向观众透露这个秘密——那会毁掉这个戏法。

将其扩展到 ZKP:将魔术师视为「证明者」,将他们的观众视为「验证者」。魔术表演的成功(希望接下来会引起难以置信的喘息和热烈的掌声)类似于「有效」的证明:魔术奏效了,所以魔术师必须知道表演的秘密。当然,如果幻觉不起作用,那么证明就「无效」:观众会感到失望,魔术师可能实际上并不知道所谓的秘密。

因此,魔术展示了 ZKP 的一个属性:隐私。但是简洁和省力的特性又如何体现呢?让我们回到这个类比……

观众可以完全跳过表演,只要求魔术师分享魔术背后的秘密。但魔法的秘密可能是非常复杂的。即使只是解释一个技巧的方法,及其所有的微妙之处,也可能需要很长时间,更不用说理解了。有时,当被要求透露他们的秘密时,魔术师可能会故意向观众透露一个「错误」的解决方案,以引导他们走上错误的道路。如果不自己掌握这个技巧,观众就无法明确地确定这个秘密方法是否真的有效——掌握它可能需要几天、几个月甚至几年的时间。

因此,就像直接检查秘密方法的正确性实际上是时间和工作密集型的一样,ZKP 的情况也是如此。对于观众来说,通过简单地欣赏表演来验证秘密方法是否有效要快得多。

洗牌

举个简单的例子,在上面的视频中,我声称知道一种秘密方法,可以让我立即洗一副牌。我想向你证明我有这个能力,但不透露它是如何运作的。在戏法结束时展示一副有组织的牌,这就有力地证明了我必须知道一种「洗牌」的秘密方法。而且,当我展示整理好的牌组时,你可以立即验证我的说法,这比你自己学习技巧要快得多。

我希望这个类比有助于揭开零知识证明的神秘面纱。即使对于那些不是密码学研究人员或工程师的人来说,隐藏秘密的魔术和魔术师也可以作为理解 ZKP 关键属性的有用心理模型。

再次强调:魔术实际上是零知识证明,零知识证明与魔术没有什么区别。

Subscribe to Foresight News
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.