Filecoin作为一种可以将云存储转变成算力市场的非中心存储网络, Filecoin在其衍生的矿业市场中风头正盛;但在整个 Filecoin矿业市场中,大多数人对 Filecoin挖矿的相关知识只知皮毛。接下来,让我们系统了解 Filecoin算力密封全过程。
1.Filecoin奖励机制
目前, Filecoin的回报包括区块爆块,存储市场和检索市场。
2. Filecoin矿机挖矿
Filecoin挖矿过程简单地分成两步:Worker和Miner。
Worker负责计算,用 SDR算法对原始数据进行计算,然后将计算出的数据封存在硬盘的扇区内,提交上链生成复制证明(PoRep),矿工就得到了算力,这一过程需要消耗大量 CPU、内存和 GPU资源。接着, Filecoin网络根据矿工持有的算力(即区块内的打包票选权)来分配区块打包权,算力越大,赢票率越高,矿工在参与区块打包时需要重复提交时空证明(PoSt),完成了时空证明(PoSt)的节点可以得到区块打包的奖励。
Filecoin挖矿流程
通用存储市场
3.Filecoin存储的数据封装
“封装”指的是根据 Filecoin规定的格式,向数据进行存入,P1,P2,C1,C2是将数据打包存入的过程(Precommit1,Precommit2,Commit1,Commit2; Pre:预先或准备)。以下是装箱的例子:
Precommit1 (预封装一阶段)
文件数据如何堆叠?将它们切成碎片(因为在 IPFS网络中所有的文件都将被切成多达256 K的碎片),将文件切成碎片的阶段称为p1。
这一阶段需要大量的 CPU消耗。
Precommit2(预封装二阶段)
将这些数据碎片装成小箱,然后记录文件名和一些信息(我们通常称之为动态哈希表 DHT的形成过程,以后找文件时使用该 DHT),这个生成动态哈希表的过程叫做P2。
由于这一过程需要生成默克尔树,因此需要使用 GPU,即显卡资源,因此很多时候密封机需要加上显卡。
Commit1 (封装第一阶段)
第3阶段,将数据切成小块放入小箱子中,然后为文件生成信息表,接下来要做的,是在这些小盒子上贴上标签,叫做C1。
这个阶段非常省时,一般几十秒就能完成,但是需要花费大量的 Gas费用,这个环节消耗50%以上的 Gas费用。
Commit2(封装第二阶段)
第4阶段,要做的就是零知识证明,为以后提交时空证明(PoSt)做准备,那么什么是零知识证明?数据存储到此节点时,不知道存储内容时,也可以证明已保存此文件,即C2。
该阶段一般需要大量的并行计算,因此多显卡机是一个必要的工具,这是消耗 Gas费用较高的第二个环节。
密封算力小结
P1,P2,C1,C2封装数据的过程。P1是切片装箱,需要CPU (花费数小时);P2是生成文件的信息表,也叫动态散列列表 DHT,一般需要显卡(几十分钟完事);C1是贴标签(几十秒就够了, Gas费的一个主要消耗环节);C2是做零知识证明,一般需要多显卡(Gas费的主要消耗环节之一)。
Filecoin算力密封全流程小结
配合下面流程图,对密封流程中的重要步骤进行解析:
Ø Empty–Packing(空扇区,灌注数据,形成未密封扇区);
Ø PreCommit1~PreCommit2 (进行算力密封,文件碎片通过默克尔树列进行加密,最后计算出默克尔树列的根值,预计P1会花几个小时,P2会花几十分钟);
Ø PreCommting (将PreCommit2计算出的默克尔树根提交上链,以证明矿机加密能力,以及可完成扇区密封);
Ø WaitSeed (可以理解为等待一定时间,或者说某一区块高度,每块间隔30秒,这是当前主网络的高度时间,具体等待是:一个扇区计算出的随机数,用于抽查P2密封扇区内文件是否被存储,零知识证明);
Ø Commiting1~2 (提取相应的文件碎片,计算出默克尔根的文件路径,C1预计要花几十秒,C2预计要花25分钟);
Ø CommitWait (提交C2计算结果的根,以证明文件碎片被保存);
Ø FinalizeSector (扇区密封终止);
Ø Proving(完成密封)。
以上是对Filecoin算力密封流程的解析,从存储力转换成算力的全过程,希望能给对Filecoin感兴趣的各位带来帮助。
领取专属 10元无门槛券
私享最新 技术干货