区块链领域最令人激动的发展之一是零知识证明(ZKPs)的广泛采用。这项技术带来了优异的透明度、不变性和隐私性,并且已经变成保证区块链上互换资讯隐私的三种可能的解决方案之一,其他两种分别是安全多方计算(sMPC)和可信执行环境(TEE)。那么,什么是零知识证明(ZKP)呢?零知识证明的应用和用例有哪些?下面,我们一起来看看。
零知识证明(zero knowledge proofs),称之为ZKP,这是密码学中应用的一种方法,用以证实某些东西是已知的,且不直接揭露已知的资讯。它大部分允许在互换中对个人资讯保密。零知识证明是间接证明,允许您表现自己了解一个秘密,而无需向其他人表露该秘密。
在零知识证明中,基本角色是证明者和验证者。证明者务必证实他们知道这个秘密。验证者务必可以验证证明者是否坦白说。
零知识证明之所以有效,是由于验证者规定证明者做一些只有在证明者肯定知道秘密的情形下才能完成的事。假如证明者正在猜想,他或她最后将被验证者的测试证实是错误的。如果知道这个秘密,那么证明者每次都会根据验证者的测试,而不会出现难题。这就像银行和组织规定您提供已知秘密词汇的信函以验证你的身份一样。你不是在告知银行你的银行帐号里有什么,你只是在跟他们说你了解一个给出词汇的顺序。
零知识证明方式可让一方(证明者)在不泄漏任何附加信息的情形下向另一方(验证者)证实一项阐述的真实性。当存有敏感信息且证明者不希望验证者访问信息时,这一点尤其有效。
证明者只需提供其能够产生的数学证明,而验证者可以用此证实来检验阐述的真实性,但不能使用此证实来重构原始信息。
假定一条隧道有着2个入口A和B。有一扇上了锁的门,用密码封禁住唯一的途径,阻拦人们从隧道的一端来到另一端(从A到B)。您知道密码,且希望将密码卖给想进入隧道的X。
您希望她在获得密码以前先付款,而她却想让您先证实您确实了解密码。在这类情况下,她可以站在隧道前边,看着您走入其中一个入口,随后从另一个入口走出来。通过这种方式,她可以相信您确实了解密码。
零知识的证明的应用主要有5大领域:
①区块链:比特币和以太坊等公共区块链的透明度使交易的公开验证得以实现。可是,这也意味着极少的隐私,并可能造成使用者去匿名化。零知识证明能够为公共区块链引进更多隐私。比如,数字货币Zcash基于零知识简约的非互动型知识论述(Zk-SNAKR),这是一种零知识加密方法。
②会计:ING应用ZKP,允许顾客确认其秘密号码位于已知范围内。比如,抵押贷款申请人能证实他们的收益在可接受的范围内,而无需表露他们的准确薪水。
③投票:假如公共区块链记录了投票,则不需要信得过的第三方来检验结果。因此,ZKP能使投票系统密名,由于合格的选民能够在不表露身份的情形下证实他们投票的权力。
④认证:在身份认证系统内,一方希望用密码等一些秘密资讯向第二方确认其身份,但不许第二方学习任何东西。ZKP能够帮助实行该类资讯互换。
⑤讯息传递:信息的端到端加密是必要的,便于除了您要发送至的邮件以外,没有人可以阅读个人邮件。根据ZKP和区块链,大家可以在消息传递世界里创建端到端的信赖,而不会泄漏任何额外的资讯。
新创公司QEDIT研发了SDK(软件开发工具包),该工具箱使您可以在现有的区块链中实施零知识证明,以增强交易的隐私性,同时保持根据节点买卖交易验证的概率。此项目已获得欧盟委员会质量认证,其合作伙伴包含VM Ware,Ant Financial和Deloitte等知名公司。
StarkWare早已创立了基于zk-STARKs协议的解决方案,该协议还可以在目前网络上完成。此项目早已吸引了Vitalik Buterin,Pantera Capital,Intel Capital,Sequoia Capital和其它投资人的资产。
荷兰银行ING已发布零知识证明(ZKP)的修改版本-零知识范畴证实(ZKRP)。该协议能证明客户的薪水在取得抵押所必须的范围内,而无需表露其自身的实际额度。
讲到这里,相信大家对于什么是零知识证明,以及零知识证明的应用和用例都有一定的了解了。总的来说,零知识证明因独特的隐私保护特征和拓展潜力而快速受到重视。随着该项技术在区块链、数字货币和DeFi领域的应用日益增加,可能带来更多创新服务,进而极大地惠及于客户。零知识证明有望在建立更安全、更私密、更有效的DApp生态体系层面发挥主导作用。