有没有觉得自己生活在斯汀的歌曲中?那首歌唱道:“你每一次呼吸,你每一个动作,我都会注视着你”?如今,似乎总有某人在追踪你每一步——字面意义上。去商店时,你的银行知道你买了什么,花了多少钱,甚至知道你在哪里消费。你智能手机上的GPS每秒钟都在追踪你的位置信息,公共场所的监控摄像头不断盯着你,而你的互联网服务提供商(ISP)像老鹰一样监视你的在线习惯。所以,如果这一切感觉像是现实电视节目,那可能确实是,但没有华丽的外表!
问题是,如果你能翻转剧本,至少让你生活的一部分保持私密呢?实际上,是非常重要的一部分——你的财务生活。引入零知识证明(ZKP)。这些巧妙的加密工具让你能够证明一笔交易是合法的,而无需透露任何细节——谁支付了什么,在哪里,谁在什么时候发送了多少,或任何其他有趣的细节。基本上,这就像是在说:“一切都没问题,”而不向任何人展示实际的收据。听起来有趣吗?继续关注,看看这个协议如何帮助你实现一种感觉像科幻小说但完全真实的隐私水平。
零知识证明(ZKP)是一种加密方法,允许某人证明他们知道或拥有某样东西,比如密码,而不透露实际信息本身
ZKP有多种形式,包括ZK-SNARK(零知识简洁非交互式知识论证)和ZK-STARK(零知识可扩展透明知识论证)
ZKP正越来越多地被整合到各种区块链应用中,从以隐私为中心的加密货币如ZCash到像zkSync这样的第二层解决方案,提升交易吞吐量
让我们直接深入零知识证明的定义。如果一开始看起来有点复杂,不用担心,我们会在下一句话中逐步解释清楚。
零知识证明(ZKP)是一种加密方法,通过这种方法,一方(证明者)可以向另一方(验证者)证明某个陈述是真实的,而无需透露任何超出陈述本身有效性的额外信息。这意味着验证者可以相信该陈述的真实性,而不需要了解底层数据或证明是如何构建的。换句话说,零知识证明是一种加密方法,其中一方——比如说,你在沃尔玛购物——可以向另一方,比如沃尔玛,证明某个陈述是真实的,例如你的余额足够,而无需透露任何额外的细节,比如你具体有多少钱。零知识证明只是确认该陈述是真实的——你有足够的钱。故事到此结束。
证明者-验证者动态
几条区块链支持使用零知识证明进行隐私保护应用:Zcash使用ZKP来保护交易数据不被公开查看,zkSync是一个基于以太坊的二层扩展解决方案,利用ZKP提供隐私和可扩展性。还有Aztec协议,本质上是一个隐私保护平台,使用ZKP来实现私密交易和智能合约。当然,还有更多。
这里有一个基于ZK证明的协议在现实生活中如何运作的例子。想象一下,你想在一个区块链消息平台上给朋友发送一条私密消息。在一个旧范式的区块链系统中,你的消息对网络上的每个人都是可见的。这可能会危及你的隐私。但是,假设你使用Aztec。通过这个协议,你的消息将被加密并与其他交易打包成一个批次。然后生成一个ZKP,以证明该批次交易是有效的,而不透露单个交易的内容。这个ZKP被提交给基础层区块链(如以太坊)进行验证。
这个技术是在1980年代由一些聪明的人开发的——Shafi Goldwasser、Silvio Micali和Charles Rackoff——旨在解决一个大问题:如何证明你知道某件事(比如有现金支付)而不泄露你具体知道什么。ZKP专门为这种任务设计,这就是它们在区块链中如此受欢迎的原因,区块链领域完全围绕隐私展开。继续使用沃尔玛的类比,你可以说,当你在购物时使用零知识技术时,你实际上是将一条敏感信息加密成一个秘密代码,以证明你能够承担费用。
沃尔玛的系统然后解密并验证它,而无需查看你的实际余额或交易历史。这就像有人说:“相信我,我能搞定,”而不实际展示收据或透露任何敏感细节。所以你买了东西就走了,世界上没有一个灵魂,除了可能是沃尔玛,知道你买了什么以及你支付了多少。
沙菲·戈德瓦瑟和西尔维奥·米卡利
如果一个证明是零知识证明,它将始终完全满足这三个基本属性:
好的,希望现在你不会被“声明”、“验证者”和“证明者”等术语吓到,所以是时候了解零知识技术的内幕了。这些家伙有很多不同的类型,每种都有自己证明真相的方式,同时保持细节的保密。以下是主要类型的快速概述,交互式和非交互式zk证明,但在开始之前,让我们用烹饪类比来简化一下。想象一下你正在烤一个派。
交互式证明:要使用交互式证明来证明派的真实性,你会邀请一个朋友过来观看你烘焙。他们会品尝面糊、馅料和最终产品,以确保它是真正的。这就像验证者观察创建证明的整个过程。
非交互式证明:要非交互式地证明派的真实性,你会烤好派,然后给你的朋友提供一小块品尝。他们可以在不观看你烘焙的情况下验证味道和成分。这就像验证者检查一个预生成的证明,而不需要观察整个过程。
在区块链术语中:
不过,交互式证明的问题在于双方必须同时在线,每个证明就像开始一个全新的对话——超级低效。这就是非交互式证明的用武之地。
在1988年,Manuel Blum、Paul Feldman和Silvio Micali提出了第一个非交互式零知识证明,其中证明者和验证者有一个共享密钥(CRS)。它是如何工作的呢?你(证明者)和你的朋友(验证者)就一个共享的食谱(CRS)达成一致。你按照食谱烤派(创建证明)。你的朋友品尝派(验证证明)。如果它尝起来像柠檬和牛奶,他们就知道你遵循了食谱。在区块链术语中,双方生成一个对证明者和验证者都已知的公共值,即CRS。证明者生成一个加密对象(证明)。验证者检查证明是否与CRS一致。
基于非交互式证明的协议示例包括zk-SNARK和zk-STARK协议,我们将在接下来的部分中查看。
虽然交互式证明完全依赖于实时的来回互动,但非交互式证明让你只需一个精心制作的一次性证明就能完成工作。这使得它们在不想或不需要进行持续对话的情况下非常高效。zk-SNARKs和zk-STARKs将非交互式证明的概念进一步提升了区块链的隐私。那么,怎么做呢?
ZK-SNARKs听起来可能像是科幻电影中的东西,但它实际上只是零知识简洁非交互式知识论证的一个花哨缩写。当你拆解它时,它实际上只是我们刚刚讨论的那些非交互式证明的更高级版本,所以,不用担心,你会明白的。如果你正在处理ZK-SNARK协议,它将完全满足这五个基本属性:
想象一下你烤了一个秘密食谱的派。你想保持它的独特性,防止其他人复制。如果有人能够复制这个派,它就不再特别了。同样,在区块链中,恶意交易应该难以复制。这确保了网络的完整性和安全性。
几位“厨师”共同合作,创造出食谱的秘密成分
为了确保“食谱”既独特又安全,一些“厨师”共同合作创造食谱的秘密成分——在区块链术语中称为CRS。一旦他们完成了CRS的创建,他们就会“销毁”食谱,以防止任何人滥用它。问题在于,这个过程依赖于信任所有厨师确实会销毁他们的秘密部分。但如果其中一个不这样做呢?这就是ZK-STARKs(零知识可扩展透明知识论证)发挥作用的地方。
虽然ZK-SNARKs以其紧凑性和高效性将零知识证明带给大众,但它们引入了新的挑战,比如需要“厨师”的可信设置以及在处理更大数据集时的有限可扩展性。ZK-STARKs解决了这些问题。可以将它们视为从翻盖手机到顶级智能手机的演变——不再需要风险设置,并且在处理大数据时表现更好,使其更强大、更安全且更易于使用。但ZK-STARKs不需要生成和保留秘密随机数或参数的可信设置阶段。相反,它消除了对机密设置程序的需求,并降低了篡改或泄露的风险。让我们来详细了解一下ZK-STARKs的内容:
所以我们仍在尝试烤一个派,并证明我们可以完美地烤它,而不透露秘密成分。在ZK-STARKs中,“食谱”是公开知识,意味着每个人都知道要遵循的步骤。然而,只有“厨师”知道秘密成分,称为见证。当厨师正确地遵循食谱并烤出派时,这证明他们知道秘密成分——而不透露它是什么。
只有“厨师”知道秘密成分
ZK-STARKs 是透明的。它们不需要可信的设置,在某些情况下使其更安全。重点在于证明本身,可以在不依赖于秘密成分的情况下公开验证。ZK-SNARKs 和 ZK-STARKs 都是区块链中隐私和可扩展性的强大工具。它们之间的选择取决于应用程序的具体要求。
零知识证明的未来将会非常激动人——想象一下:zk-SNARKs 和 zk-STARKs 已经引起了轰动,但研究人员就像过度兴奋的创新者,使它们变得更快、更顺畅。他们的目标?减少计算负担,这意味着让一切在您的计算机上更快、更容易。想象一下区块链网络像热刀切黄油一样运行——听起来不错,对吧?
ZKPs 正在与最酷的技术合作,如人工智能和物联网。我们谈论的是能够学习和成长而不窥探您私人数据的人工智能,以及能够安全地相互通信的物联网设备,同时保护您的秘密。这就像一个高科技、注重隐私的聚会,没有人泄露任何秘密!
而且你猜怎么着?ZKPs 不仅仅是在区块链聚会上大显身手——它们也在其他领域扩展。我们可能很快会在安全投票系统、超级机密的医疗记录和秘密商业交易中看到它们。这一切都是关于在不透露细节的情况下证明某些事情。谈论一个改变游戏规则的东西!
随着 ZKPs 变得更加先进,我们正朝着一个一切标准化并与他人良好协作的世界迈进。可以把它看作是确保沙箱中的所有技术玩具和谐相处,以便 ZKPs 可以无缝使用。
在所有这些隐私魔法中,仍然需要在安全性和满足反洗钱和反恐融资等法规之间走钢丝。找到那个甜蜜点将是一个难题,但嘿,这也是乐趣的一部分!
总之,零知识证明将成为数字世界的超级英雄,使一切变得私密、安全和高效。随着技术的发展,ZKPs 将使我们的在线生活不仅更快,而且更安全和更私密。
展望未来,显然零知识证明(ZKPs)不仅仅是一个概念,而是一项具有重大影响的技术。这些密码学奇迹正在改变我们在数字空间中处理隐私、安全性和可扩展性的方式。从私密的区块链交易到安全的投票系统和机密的商业交易,ZKPs 将成为幕后英雄。ZKPs 从交互式证明到 zk-SNARKs 和 zk-STARKs 的旅程令人难以置信。每一步都使我们更接近一个我们的数据可以私密且仍然可以验证和确认的世界。
随着技术的发展,我们预计会有更多应用与人工智能和物联网集成,以提供曾经是科幻的隐私保护解决方案。但与所有技术一样,创新必须符合监管。导航这一领域将需要仔细考虑,以确保 ZKPs 被负责任和道德地使用。
总之,零知识证明将重新定义数字隐私和安全,创造一个更私密、安全和高效的在线世界。无论您是技术爱好者、开发者还是只是对数字隐私如何演变感到好奇,都请关注 ZKPs。未来是光明的,它正由这些密码学奇迹塑造。
零知识证明是一种加密方法,允许一方在不透露任何关于声明本身的细节的情况下证明声明的真实性。它们确保验证者只知道声明是真还是假,而不会获得任何额外信息。
零知识证明分为交互式和非交互式两种类型。交互式证明涉及来回交换以证明知识,而非交互式证明使用共享密钥进行单一的静态证明。这两种类型都旨在验证声明,同时保持底层数据的机密性。
零知识证明通过实现机密交易、安全投票和高效的扩展解决方案(如zk-rollups)来增强区块链的隐私性。它们被用于像ZCash和zkSync这样的项目,以保持交易细节的私密性并提高系统效率。