在了解零知识证明如何应用这一问题之前,我们或许可以先问问自己真的了解什么是零知识证明吗?可能有很多投资者还不了解究竟零知识证明是什么。其实简单的说它就是一种涉及两方或更多方的协议,他指的是证明者能够在不向验证者提供任何有用的信息的情况下,就让验证者相信某个论断是正确的,它是两方或更多方完成一项任务所需采取的一系列步骤。了解了这一概念,我们就可以进一步了解零知识证明如何应用?大家或许想要知道它的应用场景有哪些?下面就让币圈子小编说一说。
零知识协议支持在分布式区块链网络上转移资产,并具有完全的隐私性。常规的区块链交易,当资产从一方发送到另一方时,该交易的详细信息对网络中每一方都可见。相反,零知识证明交易中,其他人只知道发生了有效的交易,而不知道发送方、接收方、资产类别和数量。花费的身份和金额可以隐藏起来,并且可以避免诸如“抢先”之类的问题。
基于区块链的系统使用零知识证明最突出的是ZCash,它也是第一个实现zk-Snarks的加密货币。此后,其他区块链系统也加入了零知识证明,以便在保护用户/交易隐私的同时验证。其中最著名的可能是以太坊,它实现了zk-Snarks作为拜占庭升级的一部分。
第一个场景:ZCash项目
Zcash项目,大家都知道是“隐私交易”。Zcash代表了zkSNARK的一个应用方向:隐私。隐私有不同的程度,ZCash的隐私交易指的是隐藏交易的发送方,接收方以及交易金额。Zcash已经经历过三个版本:Sprout,Overwinter, Sapling。这三个版本本质上都没有太大的变化,只是支持的功能更多,生成证明更快,体验更好。
一笔转账用Note来表示,包括转账的金额v和一个随机数。Note有两个外在的表现形式:一个是Commitment,一个是Nullifier。Commitment和Nullifier都是通过不同的Hash函数生成。Commitment代表一次金额转入,Nullifier代表一次消费。注意,对于一个Note,Commitment和Nullifier都是唯一的。因为Commitment和Nullifier是Hash的结果,即使这两个数据公开,其他人也无法推断出Commitment和Nullifier之间存在联系。也就是说,提供一个Commitment,能说明进行了一笔转账(具体信息其他人未知)。能提供对应的Nullifier,就能消费。
第二个场景:Filecoin项目
Filecoin是存储行业比较热门的项目。Filecoin想搭建一个去中心化的存储交易平台。去中心化的存储,有个核心问题,怎么证明存储提供方,真实有效的存储了指定的数据。Filecoin是通过PoREP以及PoST算法实现的(其中就包括零知识证明)。PoREP是数据存储证明算法(证明用户数据被正确的处理)。PoRep算法的全称是ZigZag-DRG-PoRep。
Sector中未Seal的原始数据首先依次分成一个个小数据,每个小数据32个字节。这些小数据之间按照DRG(Depth Robust Graph)建立连接关系。按照每个小数据的依赖关系,通过VDE(Verifiable Delay Encode)函数,计算出下一层的所有小数据。整个PoRep的计算过程分为若干层(目前代码设置为4层),仔细观察每一层的DRG关系的箭头方向,上一层向右,下一层就向左,因此得名ZigZag(**Z字型**)。
第三个场景:Loopring DEX 3.0项目
从2017年,路印从“环路撮合”的最初设计,经过了1.0,2.0以及3.0的三个大的版本的协议升级。1.0/2.0,相对来说,受限以太坊本身性能的限制,交易流程复杂,体验和中心化交易所相比,有较大的差距。路印协议3.0,通过零知识证明技术(ZKP),在zk Rollup的基础上,结合DEX的业务场景开发设计,兼顾去中心化和交易性能。也是 @Steve Guo@Loopring&UVA @王东Daniel@loopring 现在正在做的项目。
相对1.0,2.0来说,路印协议3.0采用零知识证明(ZKP)技术,将所有的撮合逻辑都在链下完成。每一笔撮合(Settlement)都会生成证明并提交到链上,证明链下的撮合正确无误。路印协议采用和以太一致的“账户”模型,所有的账户的“状态”(余额)都记录在链下。所有和状态相关的操作,都是在链下更改,提交Proof到链上记录。
综上所述,就是币圈子小编对于零知识证明如何应用以及零知识证明应用场景有哪些这两个问题的回答。其实零知识证明可以应用的场景和项目还有很多,其中不乏一些有意思的项目。总的来说,零知识证明这一技术还是非常有意思的,它就像是一座桥梁,帮助我们实现了从现实世界到数字世界的映射。在区块链的世界中,零知识证明可以说是让消费者重新掌握了他们的个人数据,对于消费者来说,这是一种很大的进步。