当前位置:首页 » 区块链知识 » 零知识证明区块链6

零知识证明区块链6

发布时间: 2024-12-23 14:40:42

① 三分钟读懂零知识证明(ZKP)

区块链技术的一大优势是透明性,但智能合约应用在需要保护数据隐私的情况下,如使用真实数据触发执行。零知识证明(ZKP)在公链上解决了这一问题,确保了隐私安全。

零知识证明,简称ZKPs,允许一方在不透露任何信息的情况下,证明自己拥有某个数据。在区块链中,它仅揭示隐藏信息的有效性和持有者的身份。理解零知识证明的关键,是其三个基本特征:保密性、真实性与完整性。保密性保证了数据的隐私,真实性确保了数据的有效性,完整性则保证了数据的完整未被篡改。

零知识证明的实用性非常广泛,从身份认证到数据共享,都得到了应用。在身份认证方面,用户可以证明拥有私钥或知道特定答案,而无需泄露密钥本身,通过零知识证明确认身份。在数据保护方面,零知识证明可以证明数据的真实性和可信性,而无需暴露数据内容,这在隐私保护中尤为重要。

在计算压缩和区块链扩容方面,零知识证明可以避免重复计算,通过证明计算过程,减少资源消耗和数据冗余。例如,在智能合约执行时,通过零知识证明证明计算结果的正确性,而不是重复执行相同的计算。

区块链项目如Zcash已采用零知识证明,允许用户进行隐私交易,隐藏交易金额和地址。去中心化预言机网络则利用零知识证明验证链下数据,同时隐藏数据内容,确保数据安全。

零知识证明方案如DECO提供了多种应用场景,包括低抵押贷款,通过证明信贷资质,同时保护用户隐私。此外,DECO还支持创建去中心化身份认证(DID)协议,让用户能自主管理身份信息,增强隐私保护。

总之,零知识证明为区块链技术带来了隐私保护和数据信任的新维度,使得数据安全性和透明度并存。通过零知识证明,区块链不仅实现了数据的信任,还保护了用户的隐私,推动了区块链技术的广泛应用和发展。

② 零知识证明是什么意思

零知识证明(Zero-KnowledgeProof,简称ZKP)是指在一个交互式过程中,证明人可以向验证人证明某个陈述的真实性,而不需要向验证人提供任何多余的信息。

3、电子投票

在传统选举过程中,塞选操作和计票方式本身存在着不同的安全漏洞,往往容易导致选举结果被篡改甚至被黑客攻击和破解。通过使用基于区块链和ZKP的电子投票系统,选民所做出的选择将得到强有力的保护,并具备不可逆性,使得其避免遭受相关泄漏和攻击的威胁。

总之,零知识证明在现实应用中能够极大地提高数据安全性和隐私保护性,其重要性和意义是不言而喻的。

虽然目前还存在着一些技术难点,但相信在各行业权威和喊岩科研人员的共同努力下,ZKP技术将得到进一步关注和发展。

③ 什么是零知识证明

零知识证明是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。大量事实证明,零知识证明在密码学中非常有用。如果能够将零知识证明用于验证,将可以有效解决许多问题。
在有必要证明一个命题是否正确,又不需要提示与这个命题相关的任何信息时,零知识证明系统(也叫做最小泄露证明系统)是不可或缺的。零知识证明系统包括两部分:宣称某一命题为真的示证者(prover)和确认该命题确实为真的验证者(verifier)。证明是通过这两部分之间的交互来执行的。在零知识协议的结尾,验证者只有当命题为真时才会确认。但是,如果示证者宣称一个错误的命题,那么验证者完全可能发现这个错误。这种思想源自交互式证明系统。交互式系统在计算复杂度理论方面已经获得异常独立的地位。

零知识证明(Zero—Knowledge Proof)起源于最小泄露证明。设P表示掌握某些信息,并希望证实这一事实的实体,设V是证明这一事实的实体。假如某个协议向V证明P的确掌握某些信息,但V无法推断出这些信息是什么,我们称P实现了最小泄露证明。不仅如此,如果V除了知道P能够证明某一事实外,不能够得到其他任何知识,我们称P实现了零知识证明,相应的协议称作零知识协议。
零知识证明的性质
在最小泄露协议中零知识证明需要满足下述两个性质:
(1)正确性。P无法欺骗V。换言之,若P不知道一个定理的证明方法,则P使V相信他会证明定理的概率很低。
(2)完备性。V无法欺骗P。若P知道一个定理的证明方法,则P使V以绝对优势的概率相信他能证明。
在零知识协议中,除满足上述两个条件以外,还满足下述的第三个性质:
(3)零知识性。V无法获取任何额外的知识。
我们把性质(1)和(2)称为零知识证明的正确性和完备性,而性质(3)称为零知识性。
零知识证明的属性
零知识证明需要满足三个属性。
1、如果语句为真,诚实的验证者(即:正确遵循协议的验证者)将由诚实的证明者确信这一事实。
2、如果语句为假,不排除有概率欺骗者可以说服诚实的验证者它是真的。
3、如果语句为真,证明者的目的就是向验证者证明并使验证者相信自己知道或拥有某一消息,而在证明过程中不可向验证者泄漏任何有关被证明消息的内容。
零知识证明并不是数学意义上的证明,因为它存在小概率的误差,欺骗者有可能通过虚假陈述骗过证明者。换句话来说,零知识证明是概率证明而不是确定性证明。但是也存在有技术能将误差降低到可以忽略的值。
零知识的形式定义必须使用一些计算模型,最常见的是图灵机的计算模型。
零知识证明的举例
例子一
A要向B证明自己拥有某个房间的钥匙,假设该房间只能用钥匙打开锁,而其他任何方法都打不开。这时有2个方法:
①A把钥匙出示给B,B用这把钥匙打开该房间的锁,从而证明A拥有该房间的正确的钥匙。

②B确定该房间内有某一物体,A用自己拥有的钥匙打开该房间的门,然后把物体拿出来出示给B,从而证明自己确实拥有该房间的钥匙。
后面的②方法属于零知识证明。它的好处在于,在整个证明的过程中,B始终不能看到钥匙的样子,从而避免了钥匙的泄露。
例子二
A拥有B的公钥,A没有见过B,而B见过A的照片,偶然一天两个人见面了,B认出了A,但A不能确定面前的人是否是B,这时B要向A证明自己是B,也有2个方法:
① B把自己的私钥给A,A用这个私钥对某个数据加密,然后用B的公钥解密,如果正确,则证明对方确实是B。
② A给出一个随机值,并使用B的公钥对其加密,然后将加密后的数据交给B,B用自己的私钥解密并展示给A,如果与A给出的随机值相同,则证明对方是B。后面的方法属于零知识证明。
例子三
一天,阿里巴巴被强盗抓住了,强盗向阿里巴巴拷问进入山洞的咒语。面对强盗,阿里巴巴是这么想的:如果我把咒语告诉了他们,他们就会认为我没有价值了,就会杀了我省粮食;但如果我死活不说,他们也会认为我没有价值而杀了我。怎样才能做到既让他们确信我知道咒语,但又一丁点咒语内容也不泄露给他们呢?
这的确是一个令人纠结的问题,但阿里巴巴想了一个好办法,当强盗向他拷问打开山洞石门的咒语时,他对强盗说:“你们在离开我一箭远的地方,用弓箭指着我,当你们举起右手我就念咒语打开石门,举起左手我就念咒语关上石门,如果我做不到或逃跑,你们就用弓箭射死我。”
强盗们当然会同意,因为这个方案不仅对他们没有任何损失,而且还能帮助他们搞清楚阿里巴巴到底是不是真的知道咒语这个问题。阿里巴巴也没有损失,因为处于一箭之地的强盗们听不到他念的咒语,不必担心泄露了秘密,同时他又确信自己的咒语有效,也不会发生被射死的杯具。
强盗举起了右手,只见阿里巴巴的嘴动了几下,石门果真打开了,强盗举起了左手,阿里巴巴的嘴动了几下后石门又关上了。强盗还是有点不信,说不准这是巧合呢,他们不断地换着节奏举右手举左手,石门跟着他们的节奏开开关关,最后强盗们想,如果还认为这只是巧合,自己未免是个傻瓜,那还是相信了阿里巴巴吧。
这样,阿里巴巴既没有告诉强盗进入山洞石门的咒语,同时又向强盗们证明了,他是知识这个咒语的。
零知识证明在区块链的应用
那么,利用了区块链技术的ZCash,就是利用“零知识证明”实现的匿名性。
相对于ZCash来说,比特币的转账并不是完全匿名的,只要知道了一个比特币地址,任何人都可以通过这个网站,查到这个地址的所有“消费”行为和关联。比如给谁转了账,又从谁(的比特币地址)那里收到过转账,在以区块链技术为基础的“账本”上都“本本份份”地记录着。
例如A有3个BTC,要给B转账1个BTC,那么在账本上就会记录着:A转出了两笔BTC,一笔为1BTC,转给了B;另一笔为2BTC,转给了自己。
那么利用了“零知识证明”的ZCash是怎么做到的所谓匿名呢?
ZCash的代币为ZEC。同样假设A有3个ZEC,要给B转账1个ZEC。
首先,A会将自己的1个ZEC分成若干份随机投入一系列的“混合容器”中,指定接收方B的地址,同时混入的时候还有其他交易方输出的若干份ZEC。这些ZEC又被混合容器随机拆分,再从这些被拆分生成的所有的ZEC中取出合计为1ZEC的若干份,转移到B的地址中,同时在发送的时间上也可以设置一定的延迟。

其中的“混合容器”,就是一条“公有链”。经过这条公有链一系列的“混币”过程,就使得包括交易地址和具体金额在内的交易信息变得无从考证了。
当然,虽然ZCash以其匿名性使其市场热度一度很高,但其仍面临诸多障碍与“原罪”。
首先,要实现匿名性,其所需要的证明信息所花费的计算资源就非常多,带来了大量的资源浪费,也导致了其可扩展性面临巨大挑战。
另外,匿名性会带来大量的额外监管问题,一旦有不法份子利用其用户黄、赌、毒等违法领域,将会给追踪与监管带来非常大的挑战,造成一系列社会问题。

④ 区块链和零知识证明在信用系统中的作用方式

区块链中的零知识证明在隐私保护方面起重大作用,它在信用系统中自然不例外,但在系统中的哪个环节以及以何种方式发挥作用却是一个值得思考和研究的问题。

第一,信用问题,不能完全依赖技术上的可靠,有些问题政府权威就足够,比如户籍与身份信息,这些并无必要有进一步的追问。

第二,区块链存证的使用场景,应该是那种存在较长的数量化的证据链条的场景,比如根据流水统计月度年度汇总,保证汇总的计算过程没有欺诈。而流水明细是在证据链的上游,时间上是在事前,在上游作假,提前几个月几年作假,对攻击者计划能力以及作假成本都要高的多。高到一定程度,从经济学意义上就具有达到防止欺诈经济可行性。

    事实上这里涉及到前文所说领域事件在链上的闭合度问题。对于几乎没有可能,或者在可见未来不具备完全闭合的现实可能性的领域,闭合度是一个有灰度级别的问题,如果沿事件的逻辑链条向上游追溯将其上链,达到一定程度使得攻击者的攻击变得相当或极度困难,区块链应用就会产生价值,并不要求完全的闭合,这样区块链的价值领域就会突破虚拟币以及去中心化金融defi这类完全闭合于链上的系统,得以扩展。这个逻辑并不限于信用系统,而适用于区块链与领域结合应用的一般逻辑。再举一例,溯源系统到底是否能够达成防伪的作用,这个问题取决于溯源在证据链条的上溯深度是否足以造成作假者的困境,不考察这一点,仅仅是形式上使用了区块链存证是没有意义的。

    所以我们几乎可以得到一个定理:

     区块链在领域应用中的价值水平与证据链的上溯深度成正比例关系。

    然后随之而来的第二个问题是:沿着证据链的反向上溯,越是上游越接近主体(公民隐私或组织的商业机密)隐私。这个问题的解决就是零知识证明的作用领地,也是它的作用方式。很多零知识证明的应用价值含混不清,现在我们把它放在证据链条的上下文中加以考量就会清晰起来:

1. 零知识证明是用来处理数量化的证据链追溯过程中,在不泄露上游证据链明文细节的前提下完成追溯,既发挥了区块链沿证据链存追溯的作用,又保护了隐私。

2. 对于没有追溯必要的场景,证据链不存在,零知识证明的作用与意义也是不明确的。比如一般身份户籍信息,行政权威应被视为可信,并无追溯必要。注意这里说的证据链并非物理意义上的因果关系,而是经过系统应用目标的价值取舍。

    总结一下:

1. 用区块链技术保留证据链上游。2. 证据链越是上游越接近公民隐私,使用零知识证明来保护隐私

1. 参考MIT媒体实验室的zkledger,使用区块链结合零知识证明来处理公民和组织的财务与税务等流水的汇总报告问题。

2. 技术上需要解决的问题是,zkledger的场景中,很有限的几个银行的大额交易,数据量少,而用于公民个人场景,数据量巨大,要找到方法解决性能问题。

热点内容
比特币国外的概况 发布:2025-05-16 21:24:19 浏览:310
z9mini矿机挖什么币6 发布:2025-05-16 21:23:14 浏览:750
数字货币交易所打包 发布:2025-05-16 21:23:08 浏览:275
以太坊的币怎么挖 发布:2025-05-16 21:20:18 浏览:623
gpu与cpu哪个算力强 发布:2025-05-16 21:17:25 浏览:472
被相亲网站骗做数字货币 发布:2025-05-16 20:55:00 浏览:738
trc20怎么转trx 发布:2025-05-16 20:46:24 浏览:139
以太坊撸猫 发布:2025-05-16 20:21:52 浏览:522
玉屏疾控中心去哪里抽血 发布:2025-05-16 19:59:23 浏览:986
区块链的加加盟培训班 发布:2025-05-16 19:58:43 浏览:675