Filecoin爆块详解:矿工如何选举成功拿到区块奖励?

大家都知道,矿工在Filecoin网络中的收益来源就是存储(检索)订单收益和区块奖励,不过就目前的存储(检索)订单非常少,主要还是通过区块奖励获取高收益。目前仍有很多人都不知道区块是什么意思,更别说区块奖励了。今天就跟大家说说Filecoin区块到底是什么?而矿工又是如何获得区块奖励的?

 

Filecoin区块到底是什么?

大家可以看到这是在Filecoin区块浏览器https://filscan.io中的部分截图:

  • Tipset:图中红方框框住的的柱子,也称Filecoin网络上的区块高度

  • 区块:红方框中明显有8个正方形,每一个正方形就代表一个区块

  • 25.6357FIL:每个区块所获得的奖励

了解区块链的会知道比特币每一个区块都只能选举一个节点,即每一周期区块选举,有且只有一个矿工能被选举成功(获取奖励)。而Filecoin区块架构完全不同于比特币

Filecoin的选举基于预期共识,就是在一个出块周期中(30秒)选举多个矿工作为领袖,这也意味着在一个区块中可以创建多个有效的同级区块,这些同级区块组成一个大区块。在Filecoin中将这个大区块称为tipset,即上面说到的Filecoin网络的区块高度,这些同级区块则为区块,也是上图中的小正方形。

值得一提的是:Filecoin每一个区块高度中产生的区块有多有少,不受限制,只要符合预期共识即可被选举成为领导者,如果在一个周期内(某个区块高度)没有一个矿工达到Filecoin网络的选举条件,则该区块高度内为0个区块。

Filecoin如何成为领袖获得区块奖励?

上面介绍了Filecoin网络的区块高度和区块的概念,接下最疑惑的还是矿工到底如何获得区块奖励,即如何在一个周期内选举成为Filecoin网络的领袖,同时完成系统分配的工作获得奖励。

首先使用功率达成共识:就是将权益共识协议中的“权益”用矿工存储量来替换,构建一个基于矿工前期工作的预期共识,在每一轮选举周期内选举一个或多个矿工,并使得选举获胜的概率与每个矿工存储空间量成比例。

Filecoin功率介绍,主要有三个重要属性:

  • 公开性:大家可以把时刻(t)全网的存储总量大小当做功率大小(这个存储是有效存储,即有时空证明提交的存储),每一个矿工的存储任务(存储量)是浏览器公开的,因此任何人可以在任意时间点计算出每个矿工的功率。

  • 可公开验证:每一个存储任务,矿工都需要生成对应的时空证明,证明该存储任务一直存在。

    功率就是根据其时空证明来验证矿工是否完成或持续工作,从而计算有效功率。

  • 变量:任意时间点,矿工可以通过增加新增扇区来增加新存储,从而提高其功率。

在官网设定的功率预期共识中满足以下两个条件,则在t时刻矿工Mi是领导者。

其中 rand(t)是一个可以在时间t从区块链中提取的公开的随机变量,Pit是矿工Mi的功率。对于任何m,H(m)的大小都是L,H是一种安全的加密哈希函数,(m)Mi是一个由 Mi签署的消息m,使得:

以上两个公式如果没有认真研究Filecoin白皮书可能还真是一头雾水,大家可以看下面的EC选举图,可以更直观的知道矿工如何被选举成功。

纪元就是一个周期(30秒),选举过程细分为以下两个步骤:

  • 矿工在t时刻会根据其算力占比计算出一个随机数rand(t),且在t时刻之前随机值是未知的,Mi就代表矿工,这个随机数要满足其上图左边公式即成功输出则才可以开始下一步。

  • 随后马上对该节点验证是否有真实有效的签名(即是否成功通过第一步获得密钥),再检查其有效功率是否与其节点一致(是否虚报),前两步简单来说主要就是验证是不是作假通过第一步,验证无误后,再进行最后一个公式套算,满足公式条件后即可成功当选领袖。

当选领袖后并不意味着一定能拿到区块奖励,当选领袖后仍有四个步骤要完成:

  • 当选领袖后,也称“获取出块权”;

  • 获取出块权以后,开始完成winningPoSt,首先根据链上获取的抽查参数,去找寻要抽取的扇区及扇区的某段位置的数据,也就是打包交易信息;

  • 打包所有扇区数据完成以后,进行运算,把算出的结果广播出去,并被大家认可,则出块成功;

  • 整个过程,必须在30秒内进行。抽取数据、计算数据、同步消息等如果出现失败,都会导致拿到出块权后而出块失败,即奖励为0。

以上就是矿工整个选举到获得区块奖励的过程了,简单来说就是矿工节点的有效存储空间越大,其有效功率越大,则被选举成为领袖的概率也会越大,进而获得区块奖励的概率越大。

 

Filecoin爆块详解:矿工如何选举成功拿到区块奖励?

扫一扫手机访问

Filecoin爆块详解:矿工如何选举成功拿到区块奖励?

发表评论