|
|
|
|
矿机回收网
联系人:王经理
手机:18994010355 18108888591
微信号: 642849534
电话:025-58763550
网址:http://www.haifakeji.com |
|
|
| | | | IPFS&Filecoin-如何使用零知识证明Zk-SNARK的 |
| | {买卖矿机矿机托管上矿机收回网联系电话18108888591}
星际云存CTO梅森
Zk-SNARK是加密范畴运用的零知识证明协议,是协议首字母缩写词,表示零知识简洁明了的非交互式知识证明。该证明最早是在1980年代晚期开发和引进的,现在被广泛应用于区块链体系中。
Zk-SNARK在区块链范畴首要用途有两个:
1.对全链做可信性验证
区块链网络跟着时刻的推移慢慢变得越来越大,如比特币很快达到1T容量,每参加一个节点都要同步很大的区块数据,占用带宽且浪费存储空间,限制了区块链的更广泛的应用。
Zk-SNARK很好的解决了这个问题,通俗的讲:不用把一头大象搬到你的面前,仅需求一张黑白的大象照片即可做到可信性验证。比如行将发布的Dfinity(ICP)和Mina区块链网络,就运用Zk-SNARK协议证明,使他们的可信性验证节点保持固定44k和20k的验证区块数据,作为非挖矿节点不用同步全链数据。
2.对区块链账户的隐私和安全性
在2010年代初期,比特币用户以为他们的买卖是匿名的,由于他们的离线私钥与用户的公共密钥无关。但是到了本世纪末,数据科学家,黑客和执法人员的共同努力,不仅相对简单识别跟踪买卖而且能够将多个匿名买卖的数据定位到一个人。
Zk-SNARK能够很好的解决隐私和安全性,Zcash体系便是运用此技能为用户做虚拟资产买卖供给了隐私和安全支持。
Zk-SNARK证明协议数学模型很杂乱,这里仅做个简单介绍:
(1)生成受信赖的设置
(2)核算证人
(3)发生证明
(4)验证证明
Filecoin网络中的又是怎样运用Zk-SNARK证明协议的呢?
Filecoin项目包含三个部分:
1.Blockchain部分-完成与区块链相关的逻辑(共识算法,P2P,块办理,VM虚拟机等)。与区块链相关的数据存储在IPFS上。该部分由Go言语完成完成。
2.RUST-FIL-PROOF部分-实施扇区存储和验证。那便是FPS(文件币证明子体系)。该部分由Rust言语完成来完成。
3.Bellman部件-零知识证明(Zk-SNARK)证明体系,首要依据BLS12_381椭圆曲线,完成了Groth16的零知识证明体系。该部分由Rust言语完成完成。Zcash也在运用。
Zk-SNARK在Filecoin首要应用在扇区封装和扇区证明上。
扇区(Sector)概念比较简单,任何了解硬盘结构的人都知道,硬盘的最小存储单元称为“扇区”。但在Filecoin网络体系中扇区为32G或64G,它运用一种StackedDRG(DepthRobustGraph,深度鲁棒图)数据处理算法是用于体系扇区,对存储数据进行一定程度的处理,以证明存储服务器确实确实存储了一些数据,而不是假造(攻击)。
扇区封装到提交到网络上阅历了三个进程:
1.扇区生成---核算证人:为原始数据结构默克尔树(MerkelTree),标签和编码核算。
核心代码在rust-fil-proofs/storage-proofs-porep中。
2.扇区证明--发生证明:扇区生成后需求“证明”已处理的数据。究竟,不会把大象提交到区块链上。运用StackedDRG数据处理算法进行分区。通过Bellman的零知识证明库,并运用Groth16算法进行数据处理证明。
StackedDRG中要进行大量的sha256核算,时刻很长,能够通过一些方法优化,如运用asm汇编优化的版别。
3.扇区证明验证(Proofon-chainverification)---验证证明:提交给链的数据包含默克尔树根的哈希核算结果和证明数据-----即仿制证明(PoRep),链上的验证矿工将验证提交的证明是否正确。
验证进程是RUST-FIL-PROOF模块调用Bellman库以验证零知识证明是否正确。验证进程相对较快,大约需求几毫秒。
具体代码在filecoin-ffi/proofs.go文件中的VerifySeal函数。
Filecoin通过扇区封装进行挖矿,主网扇区有32G和64G两种扇区巨细能够挑选,每封装完毕一个扇区向主网提交一次哈希核算结果和证明数据(即音讯),会发生一次Gas费,同样封装256T挑选64G扇区比32G扇区能够减少一半的Gas费用,但要依据自身硬件通过测验挑选合理的扇区巨细。
Filecoin网络对Zk-SNARK依据场景做了技能调整升级,严厉来讲应该叫Zk-STARK。Filecoin通过此协议完美创始了区块链在存储商场的应用。很明显,Zk-SNARK协议具有巨大的潜力,或许成为一种被广泛运用的创始性途径。
补白1:Zk-STARK和Zk-SNARK的差异
Zk-STARK是作为Zk-SNARK协议的替代版别而创立的,被认为是该技能的更快和更快捷的完成方法。但更重要的是,Zk-STARK不需求进行初始化可信设置(因而,字母“T”代表了透明性)。
从技能上讲,Zk-STARKs不需求初始化可信设置,由于它们依赖于通过哈希函数碰撞进行更精简的对称加密方法。这种方法还消除了Zk-SNARK的数论假定,这些假定在核算上本钱很高,并且理论上简单受到量子核算机的攻击。
Zk-STARK能够供给更快捷和更快速完成的首要原因之一是由于证明者和验证者之间的通信量相对于核算的任何增量是保持不变的。相反,在Zk-SNARK中,所需的核算越多,各方须来回发送音讯的次数就越多。因而,Zk-SNARK的全体数据量巨细远大于Zk-STARK证明中的数据量。
{备注本文章转载:本站回收托管显卡矿机回收以太坊矿机LTG辣条哥FILECOIN矿机IPFS等矿机}
| | | | |
|
|