查看原文
其他

【了解】Filecoin挖矿中的密封

IPFS(Inter-Planetary File System)是一个点对点(P2P)文件共享系统,是由Protocol Labs 创建的开源项目。
Filecoin是一个将云存储转变为算法市场的去中心化存储网络,矿工通过提供存储、分发和检索数据服务获得奖励,而客户则需要付费获得这些服务。
目前全球IPFS项目逐渐增加,数据存储市场的需求也在逐步加大,Filecoin 作为激励层,成为市场为IPFS 保驾护航的迫切需求。

Filecoin奖励


Filecoin的奖励目前分为存储市场,检索市场以及区块奖励。

       


 

Filecoin挖矿


Filecoin挖矿可以简单拆分为workerminer两个步骤。


worker就是负责计算,将原始数据通过SDR算法进行数学计算,然后再将计算好的数据封装到硬盘的扇区中,并提交上链生成复制证明,矿工就获得了算力,这个过程需要消耗大量的CPU、内存和GPU资源。然后Filecoin网络再根据矿工所持有的算力分配区块打包的权利(也就是区块打包票选权),算力越大、赢票率越高,矿工在参与区块打包的时候需要重复提交时空证明,完成了时空证明的节点就可以获得区块打包的奖励。    


 

Filecoin存储数据密封


数据封存阶段主要涉及Precommit 1,Precommit 2,Commit 1,Commit 2四个小阶段。简称P1、P2、C1、C2阶段;

1)   Precommit1 阶段:

系统会把用户需要存储的文件分成一个个大小为 32GB 的 sector(扇区),P1 阶段就是矿工先对sector 进行进一步的拆分,然后再按顺序进行存储,中间需要进行 11 层计算,且无法并行计算;在该阶段,通过大容量内存的方式,就有可能同时存储多个sector,并通过软件优化存储一个sector占用的内存的大小来提高P1阶段的速度;

2)   Precommit2 阶段:

P2 阶段即就是计算 Column Hash 以及生成 Replica,并构造相应的 Merkle 树,相当于解题并做出答案的过程。该阶段可以采用 GPU 加速。

3)   Commit1 阶段:

C1 阶段主要是为 Sector 证明准备所需要的数据。这个时间很短,一般在一分钟以内。

4)   Commit2 阶段:

C2 阶段是零知识证明的数据处理以及生成零知识证明的过程。相当于确认答案是否正确的阶段。该阶段可以采用 GPU 加速。

  

Filecoin挖矿密封全流程


挑选了流程中的主要步骤做出解析,配合流程图理解更佳

1、Empty--Packing(空扇区,灌入数据,形成未密封的扇区)

2、PreCommit1--PreCommit2(这里就开始密封了,文件碎片加密的方式是默克尔树列,最终要计算到默克尔树列的根值,p1预计耗时若干小时,p2预计耗时耗时几十分钟)

3、PreCommting(把PreCommit2计算得到的默克尔树根提交上链,以此证明矿机的加密能力,和能完成扇区密封)

4、WaitSeed(可以理解为等待一定时间,这里指一定的区块高度,每个区块间隔30s,这是目前主网的高度时间,具体等待的是:一个扇区计算到的随机数,用来抽查p2密封的扇区内文件碎片是否存储,零知识证明)

5、Commiting1、2(抽出对应文件碎片,计算出到默克尔根的文件路径,c1预计耗时只需数十秒,c2预计耗时25分钟左右)

6、CommitWait(提交c2计算的根,以证明文件碎片存储着)

7、FinalizeSector(扇区密封结束)

8、Proving完成密封



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存