找回密码
 立即注册

扫一扫,登录网站

首页 区块链生态 查看内容
  • 65678
  • 0
  • 分享到

加密经济学的终极学习指南

2018-7-30 09:25

来源: Unitimes 作者: Blockgeeks

什么是零知识证明(Zero Knowledge Proof, ZKP)?


零知识证明

什么是零知识证明(Zero Knowledge Proof, ZKP)?ZKP意味着A可以向B证明,他知道特定的信息,而不必告诉对方自己具体知道些什么。在这个例子中,A是证明者,B是验证者。在密码学中,这尤为有用,因为这将为证明者提供一层额外的隐私保护。 

运行一个ZKP,要满足以下这些参数:

完整性:如果陈述属实,那么诚实的验证者能被诚实的证明者说服。
可靠性:如果证明者不诚实,他们无法通过说谎来说服验证者相信陈述是可靠的。
零知识:如果陈述属实,那么验证者无法得知陈述的内容是什么。

举一个零知识证明的例子。让我们观察一下阿里巴巴洞穴是如何运作的。在这个例子中,证明者(P)对验证者(V)说,他知道洞穴后面暗门的密码,并提出在不向验证者透露密码的情况下证明此事。那么,其验证过程如下图所示:


证明者可以走路径A或者路径B,假设他们一开始决定通过路径A到达暗门。同时,验证者V来到入口,他对证明者选择哪条路径并不知情,并宣称他们希望见到证明者在路径B出现。

如图所示,证明者确实出现在路径B上,但万一这仅是巧合呢?也有可能是证明者凭运气在出发时选择了路径B,却因不知道密码被困在了门口。

所以,我们需要通过多次试验来确定测试的有效性。如果证明者每次都能出现在正确的路径上,那么证明者的确可以在不向验证者透露密码的情况下,证明自己知道密码。

版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。

本文导航

相关新闻
发表评论

请先 注册/登录 后参与评论

    回顶部