IPFS&Filecoin挖矿的过程形象化理解

目前 Filecoin 项目成为区块链中最被追捧的明星项目,因为 Filecoin 项目是当前最具可落地价 值的区块链应用项目。在 Filecoin 挖矿项目主网即将上线之际,行业内外的投资者对该项目的关注 也是到达了一个空前的高度。

IPFS 的概念在说 Filecoin 项目之前,我们先来了解下 IPFS 的概念,IPFS(Inter-Planetary File System),是一个点对点的分布式文件系统,也被称为“星际文件系统”,是由 Juan Benet 在 2014 年设计的互联网新协议,其设计目标是实现数据的永久存储、清除网络上的重复数据,并获 取存储在网络中节点上的数据地址。与我们目前的 HTTP 协议中心服务器存储数据相比,由于 IPFS 去中心化的分布式存储特性,使其更能够保证存储数据的安全、极大地降低了数据存储的成本,提 升数据下载速度,IPFS 技术解决了当前互联网最为复杂的数据存储安全性问题。因此,IPFS 技术对 互联网来说具有革命性意义。

IPFS 与 Filecoin 的关系那么目前最为火热的 Filecoin 项目跟 IPFS 有什么联系呢?IPFS 的数据是分布式存储的,存储 数据的人我们可以称作矿工。Filecoin 的矿工分两种 :①储存矿工(就是帮别人存文件的);②检 索矿工(帮别人在网络中找文件)。目前大家接触到的挖矿项目都是让大家做储存矿工。Filecoin 挖 矿其实是 IPFS 协议中对储存矿工的一种奖励机制,我们可以用一个公式简单概括理解:Filecoin = IPFS 技术+区块链应用+数字货币。

Filecoin 挖矿与 BTC 挖矿的区别

我们先简单了解下 Filecoin 挖矿的共识机制,如果你认为 Filecoin 挖矿跟 BTC 挖矿大同小异? 那你就错了!BTC 挖矿的共识机制是 POW,即工作量证明。我们计算解密哈希的速度越快,产出 BTC 的几率就越高,而计算解密哈希很大程度上依赖于芯片处理数据的速度,所以 BTC 挖矿对于硬 件要求尤其是对于芯片的要求很高,一般会使用定制芯片。

另外一方面,大量的计算十分耗电,所以电费也是衡量 BTC 挖矿成本的一个重要参数。而对于 Filecoin 挖矿,它是一种质押挖矿,其共识机制是 EC,即预期共识。Filecoin 挖矿是负责帮用户存 储数据,存储能力越强,获得 Fil 的几率就越大。这个过程电力消耗没有那么大,所以电费于成本而 言可以忽略不计,也不需要定制芯片。

Filecoin 挖矿的过程的形象化理解

我们通过一个小故事来简单了解 Filecoin 挖矿的过程。我们先设定这样一个场景,数学老师发 在黑板上投影了一张试卷,想让同学们抄写下来并解答,对于每一道题,先做完兵答对的同学有机 会获得一定奖励。 于是,同学们便拿出了自己的小本本开始抄写。过了一段时间后,老师问:第一题有谁已经做 出来了?这个时候班里有 30 位同学举起了手。 这个时候,首先老师会先查看举手同学的答案是否正确。在答案正确的前提下,为了防止有同DPRO区块督查 学直接抄袭其他同学的答案,老师还会随机抽问解题过程和题目细节,如果你能快速回答上来,那么老师就默认你是自己解出了这道题,对于解题正确的同学,老师还会给予一定奖励。 另外,如果有同学的抄题解题的速度特别快,在相同时间内可以比其他同学解更多的题,那么 当老师隔几分钟再问第二题谁已经有答案了的时候,可能只有 3 个人举起了手。这个时候,因为做 完第二题的人少,所以这些人获得第二题奖励的概率就会大很多!但是如果某些同学足够优秀,每次老师问谁做出答案了的时候他都有举手,那么为了公平起 见,老师不会连续给某个同学奖励。当然,获得老师奖励的同学还需要保护好小本本,老师会随时抽查是不是有抄写题目和解题过 程,一旦发现有异常,老师默认作弊,还会给予一定的惩罚!脱离以上形象化描述,回归到 Filecoin 挖矿技术原理来看,Filecoin 挖矿就是帮用户存储数据 以换取奖励的过程。整个 Filecoin 挖矿可以分为数据封存和共识证明两个过程。

首先来讲数据封存阶段,它主要包括 Precommit 1,Precommit 2,Commit 1,Commit 2 四个小阶段。Precommit1 阶段(下文简称 P1 阶段):系统会把用户需要存储的文件分成一个个大小为 32GB 的 sector(块),P1 阶段就是矿工先对 sector 进行进一步的拆分,然后再按顺序进行存储,中间需要进行 11 层计算,且无法并行计算,DPRO区块督查 就像我们抄写文章之前,先给文章分段,然后按段落顺序进行抄写,不能跳跃段落,所以这个阶段 耗时较高。 那有没有可能提高速度呢?答案是肯定的。矿工存储一个 sector 需要占用大约 100G 的内存, 如果内存足够大,那么他就有可能同时存储多个 sector。所以有的厂商就会优化软件存储一个 sector 占用的内存的大小来提高 P1 阶段的速度。就像原来班上同学本来 1 页纸都只能抄一道题, 但是现在一位同学把字写小了,他在 1 页纸上可以抄 3 个题。那么在大家都只有一页纸的情况下,他能抄的题就比其他同学要多。另外,可能有人看到部分商家会说 AMD 的 CPU 性能更好,这是为什么呢?其实在存储 sector 的过程中,需要用到“sha256 算法”,而 Intel 服务器没有包含其中需要的 sha256 微指 令,导致使用 Intel 的 CPU,P1 阶段的耗时非常长。就像有的同学在做题的过程中有计算器,那么 当然他的解题速度要比其他笔算的同学快很多!所以 Filecoin 官方也有说明:在 CPU 上推荐使用 AMD 的 RX 3970x,P1 阶段耗时在 4 个小时左右。

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

Commit1 阶段(下文简称 C1 阶段):C1 阶段主要是为 Sector 证明准备电路需要的数据。我们可以看成是同学在举手前的准备过DPRO区块督查 程,大致看一眼解题过程,这个时间很短,一般在一分钟以内。

Commit2 阶段(下文简称 C2 阶段):C2 阶段是零知识证明的电路处理以及生成零知识证明的过程。相当于老师确认答案是否正确的 阶段。该阶段可以采用 GPU 加速。

而共识证明包括主要包括 Winning PoSt 和 Window PoSt 两个阶段。

Winning PoSt 阶段:Winning PoSt 是在获取出块权时,对已经提交的 Sector 数据进行证明,矿工需要在 45S 内给 予回应。相当于老师对解题过程和题目细节进行询问后,同学需要在 45 秒内回答出对应内容,如 果答对,那么这位同学就有机会获得奖励。

Window PoSt 阶段:Window PoSt 相当于获得奖励的同学还需要接受老师抽查的过程,如果发现缺少解题过程等 异常,老师会进行一定的处罚。即对已经获得存储奖励的矿工进行抽查,一般每个证明周期为 1 天,每个周期分 48 个 window,每个 window 半小时进行一次抽查,以确认数据是否安全保存。

给TA买糖
共{{data.count}}人
人已赞赏
互联网

新西兰EZZ发布旗下首款爆浆果糖 基因科技引领糖果大健康时代

2020-8-7 15:16:45

互联网

南洲燕鲜炖燕窝登陆央视一套

2020-8-8 18:35:48

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索