什么是零知识证明详细解读与生活中的零知识证明介绍
今天给各位分享什么是零知识证明的知识,其中也会对生活中的零知识证明进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,如果有不同的见解与看法,请积极在评论区留言,现在开始进入正题!
什么是零知识证明(Zero-knowledge Proofs)
密码学中讲的zero-knowledge proof,在不让对方获知任何资讯的情况下证明一件事,实例是身份辨别。或是用演化计算(Evolutionary Computation)产生判断下棋残局的程式,演化计算的”产物”,通常是人类无法读懂的程式(演算法),若我们能经由实验和机率分析得知这个程式以极低的机率(可能比陨石击中你家还低)完全答对残局的结果,那我们确实可以相信这个程式有能力判断残局,就可以在无法理解却信任的情况下使用它。
据个人理解、通俗点说(个人说法):
在没有足够(甚至是根本没有)依据的情况下,猜出一个事件(密码反译)的计算方法,虽然是没有任何依据的猜,但是这个猜出的计算法方被证明是正确的,这就是零知识证明。
区块链中的零知识证明是什么?
如何不给你看我妈但是仍然证明我妈是我妈?
零知识证明是指证明者能够在不向验证者提供信息本身内容的情况下,使验证者相信某个论断是真实可信的一种技术。目前匿名性非常突出的数字资产ZCash的匿名交易就是依靠“零知识证明”实现的。
举个例子,A要向B证明自己拥有某个房间的钥匙,假设该房间只能用钥匙打开锁,而其他任何方法都打不开。这时候,A可以选择把钥匙交给B,B用这把钥匙打开该房间的锁,从而证明A拥有该房间的正确的钥匙。
或者A自己用钥匙打开房间,从房间里拿出来一个物体出示给B,B知道这个物体确实只有房间里有。方法二的原理就是零知识证明。
零知识证明可以在不泄漏信息本身内容的情况下,证明我知道这个秘,可以有效解决许多验证问题。
零知识证明是什么意思?
零知识证明是一种加密协议,它允许一方(示证者)向另一方(验证者)确认陈述的真实性,而无需透露有关该方的任何其他信息(示证者了解到的内容和来源)。
什么是零知识证明
80年代初,Goldwasser等人提出了零知识证明这一概念.从本质上讲,零知识证明是一种协议.所谓协议(Protocol),就是两个或两个以上的参与者为完成某项特定的任务而采取的一系列步骤,包括以下三个特征:1.协议自始至终是有序的过程,每一步骤必须依次执行,在前一步骤没有执行完之前,后面的步骤不可能执行.2.协议至少需要两个参与者,一个人可以通过执行一系列的步骤来完成某项任务,但它不构成协议.3.通过执行协议必须能够完成某项任务.零知识证明必须包括两个方面,一方为证明者,另一方为验证者.证明者试图向验证者证明某个论断是正确的,或者证明者拥有某个知识,却不向验证者透露任何有用的消息.零知识证明目前在密码学中得到了广泛的应用,尤其是在认证协议、数字签名方面,人们利用数字签名设计出了大量优良的算法.用一个关于洞穴的故事来解释零知识.洞穴中有一个秘密,知道咒语的人能打开 C 和D之间的密门,对其它人来说,两条通道都是死胡同.Peggy 知道这个洞穴的秘密.她想对 Victor 证明这一点,但也不想泄露咒语.下面是她如何使 Victor 相信的过程:(1) Victor 站在A点.(2) Peggy 一直走进洞穴,到达C点或者D点.(3) 在 Peggy 消失在洞穴中后,Victor 走到B点.(4) Victor 向 Peggy 喊叫,要她:从左通道出来,或者从右通道出来.(5) Peggy 答应了,如果有必要她就用咒语打开密门.Peggy 和 Victor 重复第(1)至第(5)步 n 次.假设 Victor 有一个摄像机能记录下他所看到的一切.他记录下 Peggy 消失在洞中情景,记录下他喊叫 Peggy 从他选择的地方出来的时间,记录下 Peggy 走出来.他记录下所有的 n 次试验.如果他把这些记录给 Carol 看,她会相信 Peggy知道打开密门的咒语吗?在不知道咒语的情况下,如果Peggy和Victor事先商定好 Victor 喊叫什么,那将如何呢?Peggy 会确信也走进 Victor 叫她出来那条路,然后她就可以在不知道咒语的情况下在 Victor 每次要她出来的那条路上出来.或许他们不那么做,Peggy 走进其中一条通道,Victor 发出一条随机的要求.如果 Victor 猜对了,好极了.如果他猜错了,他们会从录像中删除这个试验.总之,Victor 能获得一个记录,它准确显示与实际证明 Peggy 知道咒语的相同的事件顺序.这说明了两件事.其一是 Victor 不可能使第三方相信这个证明的有效性;其二,它证明了这个协议是零知识的.在 Peggy 不知道咒语的情况下,Victor 显然是不能从记录中获悉任何信息.但是,因为无法区分一个真实的记录和一个伪造的记录,所以 Victor 不能从实际证明中了解任何信息-它必是零知识.也就是说,Peggy 在向 Victor 证明的过程中没有泄露任何有关秘密的知识,称为零知识.
零知识证明是什么?
“零知识证明”-zero-knowledge proof,是由Goldwasser等人在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。大量事实证明,零知识证明在密码学中非常有用。如果能够将零知识证明用于验证,将可以有效解决许多问题。.
多方安全计算-零知识证明
零知识证明(Zero-Knowledge Proof),是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。
零知识证明起源于最小泄露证明。假设P表示掌握某些信息,并希望证实这一事实的实体,假设V是证明这一事实的实体。假如某个协议向V证明P的确掌握某些信息,但V无法推断出这些信息是什么,则称P实现了最小泄露证明。不仅如此,如果V除了知道P能够证明某一事实外,不能够得到其他任何知识,则称P实现了零知识证明,相应的协议称作零知识协议。
零知识证明系统包括两部分:宣称某一命题为真的示证者(prover)和确认该命题确实为真的验证者(verifier)。证明是通过这两部分之间的交互来执行的。在零知识协议的结尾,验证者只有当命题为真时才会确认。但是,如果示证者宣称一个错误的命题,那么验证者完全可能发现这个错误。这种思想源自交互式证明系统。交互式系统在计算复杂度理论方面已经获得异常独立的地位。
零知识证明大体由四部分组成:
多项式问题的转化 - 需要证明的问题转化为多项式问题 t (x) h (x) = w (x) v (x),证明者提交证明让验证者确认多项式成立。
随机挑选验证 - 随机选择验证的数值 s,验证 t (s) h (s) = w (s) v (s)。相对于验证多项式相等 t (x) h (x) = w (x) v (x),随机挑选验证,简单,验证数据少。随机挑选验证,安全性肯定不及多项式等式验证,但如果确实足够随机,安全性还是相当高的。
同态隐藏 - 同态隐藏指的是函数的一种特性。输入的计算和输出的计算保持 “同态”。以加法同态为例,满足如下的三个条件的函数 E (x),称为加法同态:1. 给定 E (x),很难推导出 x. 2. 不同的输入,对应不同输出 3. E (x+y) 可以由 E (x),E (y) 计算出来。乘法同态类似。
零知识 - 证明者和验证者之间除了 “问题证明与否” 知识外,不知道其他任何知识(不知道随机挑选值,不知道挑选值的多项式计算结果等等)。
相信经过币圈网小编对什么是零知识证明和生活中的零知识证明的介绍,你对什么是零知识证明了解更加地透彻了,感谢你对我们地支持与关注!