区块链中什么是零知识证明(Zero Knowledge Proof, ZKP)?
2024-08-20 14:14 loading...
什么是零知识证明(Zero Knowledge Proof, ZKP)?ZKP意味着A可以向B证明,他知道特定的信息,而不必告诉对方自己具体知道些什么。在这个例子中,A是证明者,B是验证者。在密码学中,这尤为有用,因为这将为证明者提供一层额外的隐私保护。
运行一个ZKP,要满足以下这些参数:
完整性:如果陈述属实,那么诚实的验证者能被诚实的证明者说服。
可靠性:如果证明者不诚实,他们无法通过说谎来说服验证者相信陈述是可靠的。
零知识:如果陈述属实,那么验证者无法得知陈述的内容是什么。
举一个零知识证明的例子。让我们观察一下阿里巴巴洞穴是如何运作的。在这个例子中,证明者(P)对验证者(V)说,他知道洞穴后面暗门的密码,并提出在不向验证者透露密码的情况下证明此事。那么,其验证过程如下图所示:

-Image courtesy: Scott Twombly (YouTube channel)-
证明者可以走路径A或者路径B,假设他们一开始决定通过路径A到达暗门。同时,验证者V来到入口,他对证明者选择哪条路径并不知情,并宣称他们希望见到证明者在路径B出现。
如图所示,证明者确实出现在路径B上,但万一这仅是巧合呢?也有可能是证明者凭运气在出发时选择了路径B,却因不知道密码被困在了门口。
所以,我们需要通过多次试验来确定测试的有效性。如果证明者每次都能出现在正确的路径上,那么证明者的确可以在不向验证者透露密码的情况下,证明自己知道密码。
区块链中的零知识证明是如何应用的?
许多基于区块链的技术都在使用Zk-Snarks。事实上,以太坊在大都会阶段就计划引入Zk-Snarks,并且将其加入以太坊的功能库。Zk-Snarks是“零知识简洁无交互知识认证”的简称,是一种在无需泄露数据本身情况下证明某些数据运算的一种零知识证明。
以上内容可用来生成一个证明,通过对每笔交易创建一个简单的快照来验证其有效性。这足以向信息接收方证明交易的有效性,而无需泄露交易的实质内容。
这就实现了以下两种情况:
实现了交易的完整性和隐私性。
实现了系统的抽象性。由于无需展示整个交易内部的工作方式,因此系统非常易用。 因此,以上就是区块链使用的一些重要的加密函数。现在,让我们观察其第二个支柱,经济学。
相关阅读
-
投资币安20亿美元的MGX是什么来头?雄厚背景惹人注目名家专栏 2025-03-13 18:49
-
BitMEX创始人Arthur Hayes:耐心是投资关键!BTC或将回调至70000美元名家专栏 2025-03-11 18:49
-
Coinbase CEO:比特币是金本位继承者!G20将跟进BTC储备交易所新闻 2025-03-11 00:18
-
美国住房和城市发展部考虑以稳定币发补助金!用区块链追踪资金流向竞争币 2025-03-10 21:40
-
Arthur Hayes:比特币7.5万美元是关键支撑!WhaleWire:熊市已到来名家专栏 2025-03-10 18:49
-
保罗克鲁格曼:川普比特币储备是史上最大Rug骗局!加密货币散户注定失败名家专栏 2025-03-09 00:50
-
加密货币沙皇David Sacks:美国早年抛售比特币损失170亿美元 是错误决策名家专栏 2025-03-07 18:48
-
Taproot Wizards创始人:储备纳入山寨币是川普的策略!换取批准买入比特币名家专栏 2025-03-05 00:52
-
川普美国加密货币储备纳入XRP、SOL和ADA将失去公信力?比特币是唯一选择?名家专栏 2025-03-05 00:51
-
加密货币支付Infini被黑、损失5000万美元!创始人:私钥管理疏忽是主因区块链 2025-02-25 05:33