美文网首页
零知识证明

零知识证明

作者: 书童阿雷 | 来源:发表于2018-10-21 16:03 被阅读25次

本周优壹组织的学习中学习到了加密相关的知识,其中出现了零知识证明,做了一些检索以期解惑。

如何理解零知识证明

零知识证明的定义:零知识证明就是既能充分证明自己是某种权益的合法拥有者,又不把有关的信息泄露出去——即给外界的“知识”为“零”。

我向你证明我会魔术,但是我不告诉你我的魔术是如何实现的,我表演了空手变大蛇,我表演了拦腰斩,然后你相信了。对于你和周围的人来说,并不了解魔术的每一个环节,即不了解魔术中的“知识”,所以被称为零知识。

理解零知识证明中的2个干扰项:

1. 知识:知识更准确的表达是保密信息。意思是对于需要保密的信息,我不希望外界知道一丁点儿。上面例子中的保密信息就是魔术的全过程。
2. 零:零是针对保密信息的。无论如何要自我证明都是要透露一些信息的,一般来说原理、过程是需要保密的,结果是可以用来验证的。对原理、过程进行零透露,对于结果进行公开是零知识证明的常用方式。

经典举例

1、A要向B证明自己拥有某个房间的钥匙,假设该房间只能用钥匙打开锁,而其他任何方法都打不开。这时有2个方法:
①A把钥匙出示给B,B用这把钥匙打开该房间的锁,从而证明A拥有该房间的正确的钥匙。
②B确定该房间内有某一物体,A用自己拥有的钥匙打开该房间的门,然后把物体拿出来出示给B,从而证明自己确实拥有该房间的钥匙。
后面的②方法属于零知识证明。它的好处在于,在整个证明的过程中,B始终不能看到钥匙的样子,从而避免了钥匙的泄露。

2、有一个缺口环形的长廊,出口和入口距离非常近(在目距之内),但走廊中间某处有一道只能用钥匙打开的门,A要向B证明自己拥有该门的钥匙。采用零知识证明,则B看着A从入口进入走廊,然后又从出口走出走廊,这时B没有得到任何关于这个钥匙的信息,但是完全可以证明A拥有钥匙。

Zcash中零知识证明的应用

根据网络中搜索的比较简明的描述:

  1. Zcash的交易中A向B支付Zcash,类比于A向B用支票支付,“支票”上用“支票号”标记(A的支票号R1,B的支票号R2)。
  2. 支付过程中A的支票号R1被添加进了作废列表。
  3. B是否拥有了Zcash,查看B的支票号R2是不是在作废列表中,如果R2不在则代表B拥有Zcash。

该种方式最大的好处在于:每笔交易矿工能接收到的东西只有一个发票代号,和一张新的发票,而且这两样东西都是被加密的。所以矿工并不知道转账双方是谁,也不知道转账金额是多少。

相关文章

  • 2018.4.21清华学习笔记

    一、什么零知识证明(Zero—Knowledge Proof) 零知识证明(Zero—Knowledge Proo...

  • Filecoin白皮书分析

    预备概念 零知识证明(Zero-knowledge proof) 零知识证明指的是证明者(prover)向验证者(...

  • 零知识证明

    本周优壹组织的学习中学习到了加密相关的知识,其中出现了零知识证明,做了一些检索以期解惑。 如何理解零知识证明 零知...

  • 零知识证明

    你的手里有红绿两个颜色的小球,假如你有一个对颜色不敏感的朋友,你要如何在不告诉他小球具体颜色的情况下,让其相信那是...

  • 零知识证明

    员外外出打猎,误打误撞掉进了一个传说中的藏宝洞,传闻这个藏宝洞中有一个可以统领整个族人的权杖。员外心想自己终于可以...

  • 零知识证明

    战争中你被俘了,敌人拷问你情报。你是这么想的:如果我把情报都告诉他们,他们就会认为我没有价值了,就会杀了我省粮食,...

  • 零知识证明

    “零知识证明”-zero-knowledge proof,是由S.Goldwasser、S.Micali及C.Ra...

  • 零知识证明

    战争中你被俘了,敌人拷问你情报。你是这么想的:如果我把情报都告诉他们,他们就会认为我没有价值了,就会杀了我省粮食,...

  • 零知识证明

    零知识证明是密码学中的一个高级协议,从字面意思理解,首先它是一个证明,并且是不包含任何知识的证明,下面来看现实生活...

  • 零知识证明

    非币圈的朋友看到这个名词可能感觉比较陌生,但这个知识其实在日常生活中也用得着,多学习点知识,融会贯通,也许会...

网友评论

      本文标题:零知识证明

      本文链接:https://www.haomeiwen.com/subject/ozgvzftx.html