秘密,以及如何证明它们:魔法师的零知识证明指南

本文通过将零知识证明(ZKP)与魔术表演相类比,深入探讨了ZKP在web3中的重要性,尤其是在隐私和可扩展性方面的应用。文章清晰地解释了zk-SNARK的定义及其属性,并通过通俗易懂的例子帮助读者理解这一复杂概念。

任何足够先进的技术都与魔法无法区分(或者正如科幻作家阿瑟·C·克拉克所著名所说)。一个像科幻小说般进展的领域是零知识证明(或 ZKP),这是一种解决 web3 中两个关键挑战的加密工具:可扩展性隐私。特别是,ZKPs 可能是降低交易费用、设计新的隐私保护应用程序的关键,从而欢迎下一个十亿加密用户。甚至在加密领域之外,ZKPs 可能会在某一天帮助安全地传输敏感数据,打击非法融资,或 打击虚假信息

但什么是 ZKPs?许多聪明的解释已经存在,供工程师、研究人员和加密社区使用,但它们并不总是针对对加密或计算机科学经验较少的听众。即使有大量的类比可用——从 瓦尔多阿里巴巴的洞穴——也不容易找到一种准确、易于理解的 ZKP 解释,全面捕捉其超能力。

因此,在这篇文章中,我结合我在加密和魔法方面的背景,探索一种新的类比:把 ZKPs 想象成一个伟大的魔术。查看下面的演示,并继续阅读有关 ZKPs 的定义特性(可扩展性和隐私)的概述——这一切是如何通过魔法进行的。

秘密以及如何证明它们:魔术师的零知识证明指南 - YouTube

a16z crypto

16.8K 订阅者

秘密以及如何证明它们:魔术师的零知识证明指南

a16z crypto

搜索

稍后观看

分享

复制链接

信息

购物

点击取消静音

如果播放未能在短时间内开始,请尝试重启设备。

更多视频

更多视频

你已注销

你观看的视频可能会添加到电视的观看历史记录,并影响电视推荐。为此,请取消并在电脑上登录 YouTube。

取消确认

分享

包含播放列表

检索共享信息时发生错误。请稍后再试。

在此观看

0:00

0:00 / 2:20•直播

在 YouTube 上观看

但首先,一些背景:什么是零知识证明?

我将首先分享一个 ZKP 的高级定义(具体是一个叫做 zk-SNARK 的定义),以及它的各种属性,然后将这些属性映射到魔法的类比上。

扩展 a16z crypto 研究合作伙伴贾斯廷·塔勒(Justin Thaler)对 SNARK 的定义:“一个 zk-SNARK 让一个(称为 prover)向一个不信任的方(称为 verifier)证明他们知道一些数据,而不透露有关数据本身的任何信息。” 或者,正如 麻省理工 AIP ZK 课程 所说,“零知识协议允许我向你证明我知道一个事实,而不告诉你这个事实。”

在公共区块链的背景下,这一点令人兴奋,因为 ZKPs 可以同时保护私人信息,并允许任何人(毫无疑问地)验证信息的真实性。zk-SNARKs 也是 简洁且节省工作: “简洁性”意味着证明的大小比你证明自己知道的数据更小。“节省工作”意味着验证者验证证明的速度比分析原始数据本身要快(在以太坊上,这意味着智能合约处理的数据更少,因此用户的 gas 成本更低)。第二层区块链可以利用 zk-SNARKs 的简洁性和节省工作属性,使去中心化应用程序处理更多数据,降低成本。

总结来说,zk-SNARKs 具有两个主要属性:

  • 隐私:你证明的数据(或事实或“知识”)的任何内容都不会被验证者揭示。
  • 简洁性 节省工作: 验证证明比直接检查原始数据本身更高效。

即便这个高级描述听起来有点像谜语:一个人如何能证明他们知道某件事而不分享他们对它的知识?

让我们再来理清这个定义……这一次,使用一些魔法。

魔术作为零知识证明

简单来说,魔术表演 就是 零知识证明。在魔术表演中,魔术师声称知道一个秘密,使他们能够执行这个幻觉。但他们不想向观众揭示这个秘密——这会破坏表演。

将此扩展到 ZKPs:将 魔术师 想象成“证明者”,将他们的 观众 想象成“验证者”。一场成功的魔术表演(希望伴随着观众的惊呼和热烈的掌声)类似于一个“有效”的证明:这个把戏成功了,因此魔术师一定知道执行它的秘密。当然,如果幻觉没有成功,证明就是“无效的”:观众会失望,而魔术师可能根本不知道这个秘密方法。

因此,魔术表演展示了 ZKP 的一个属性:隐私。但是简洁性和节省工作的属性呢?让我们回到这个类比……

观众 可以 完全跳过表演,直接询问魔术师分享某个把戏的秘密方法。但魔法的秘密可能是复杂而精致的。仅仅解释一个把戏的过程,伴随着所有的细节和微妙之处,可能需要很长时间来理解,更不用提完全理解了。有时,当要求魔术师揭开他们的秘密时,魔术师可能故意 揭露一个“错误的”解决方案 给观众,引导他们走上错误的道路。如果没有亲自在自己的掌握下掌握这个把戏,观众只能不肯定这个秘密方法是否真的有效——而掌握这一切可能需要数天、数月或数年。

因此,正如直接检查秘密方法的正确性实际上是耗时且费力的 - 即使魔术师愿意向观众透露这个秘密 - ZKP 的情况也是如此。观众更快的方式是通过欣赏表演来验证秘密方法是否有效。

重新洗牌

作为快速示例,在上面的视频中,我声称知道一种秘密方法,允许我瞬间“重新洗牌”一副扑克牌。我想向你证明我有这种能力,而不透露这个方法是如何运作的。在把戏结束时展示有序的扑克牌就是一个有效的证明,我一定知道一种秘密方法来“重新洗牌”扑克牌。同时,当我展示有序的扑克牌时,你可以迅速验证我的声明,这比自己学习这个把戏要快得多。

\\*\

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

再一次:魔术表演实际上就是零知识证明。而零知识证明与魔法无法区分。

如果你有更多简单解释零知识或其他计算机科学、密码学或更广泛的 web3 中复杂概念的想法(尤其是使用一副扑克牌),请在 Twitter @blauyourmind 或 Farcaster @michaelblau 上与我分享!

特别感谢斯蒂芬妮·津,贾斯廷·塔勒,乔·博诺,蒂姆·粗园,盖·乌尔莱,萨姆·拉格斯代尔,马克斯·卢基安丘科夫,阿里·雅哈,卡拉·吴,杰·德雷恩;埃林·布雷绍,蒂姆·哈辛,索纳尔·乔克希。

\\*\

  • 原文链接: a16zcrypto.com/posts/art...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Michael Blau
Michael Blau
江湖只有他的大名,没有他的介绍。