Cover Image for Filecoin挖矿奖励机制
Milo J
Milo J
·

简介

存储奖励是Filecoin经济的一个关键组成部分,它补贴存储提供者进行可靠和有用的存储容量并维护Filecoin区块链。

目前Filecoin中的存储奖励共11亿枚,其中30%由简单铸造生成,遵循六年减半机制,70%由基线铸造而成

Reward合约主要包含这三个方法:

1.AwardBlockReward 用于给区块生产者发放奖励,由区块中所有消息处理之后隐式调用,奖励分为两个部分:对应高度的区块奖励和区块中消息的Gas奖励

2.ThisEpochReward 用于获取对应高度的平滑区块奖励

3.updateNetworkKPI 用于更新下一个高度的奖励金额,在每个高度结束前由Power合约自动调用。如果当前高度未出块,则顺延上一个非空高度的奖励数额

1. AwardBlockReward

入参

type AwardBlockRewardParams struct { Miner address.Address Penalty abi.TokenAmount // 块中包含错误消息时的惩罚, >= 0 GasReward abi.TokenAmount // 块中所有Gas费的奖励, >= 0 WinCount int64 // 获得奖励的数量, > 0 }

修改链上状态

penalty = penalty*3  //Miner的惩罚放大三倍

totalReward = wincount * thisEpochReward/5 + GasReward   // 计算奖励金额,由对应高度的区块奖励和区块中消息的Gas奖励构成

rewardParams := builtin.ApplyRewardParams{ Reward: totalReward, Penalty: penalty, }

调用合约ApplyRewards来释放奖励

2. ThisEpochReward

调用该方法不需要参数,直接返回当前Epoch对应的平滑区块奖励和基线算力。

如在PublicStorageDeals方法中,便会调用该函数获取当前基线算力,以确定发布交易需要的质押量。

3. updateNetworkKPI

在每个Epoch结束时,如果Epoch非空,会由power合约调用UpdateNetworkKPI,更新当前实际算力、有效基线算力,有效网络时间等,具体逻辑如下:

图表, 折线图 描述已自动生成

相关参数如下:

  1. NetworkPower是全网总算力随时间增长的图像
  2. BaselinePower是基线算力随时间增长的图像,满足b(t)=b0⋅e^gt,b0=2.5057116798121726EiB,g=In2/1yr
  3. cappedRealized.Power为实际算力,取基线算力和全网算力中的较小值
  4. cumsumRealized为累积实际算力,是到当前时间cappedRealizedPower的积分(图中红色阴影部分)
  5. cunsumBaseline为累积基线算力,当cumsumRealized>cunsumBaseline时,则向右推移时间t1,直至cumsumBaseline较大(图中绿色阴影部分)
  6. effectiveNetworktime为有效网络时间,是cunsumBaseline对应的时间
  7. effectiveBaselinepower为有效基线算力,是effectiveNetworktime epoch对应的基线算力

区块奖励铸造逻辑

  1. Filecoin区块奖励占FIL总供应量的55%,共1.1×10^9FIL。其中30%用于简单铸造,70%用于基线铸造

  2. 简单铸造

文本 描述已自动生成

  1. 白色的门中度可信度描述已自动生成 简单铸造保证了早期参与Filecoin的存储提供者,获得的奖励更高      
  2. .基线铸造

文本描述已自动生成

基线铸造

小结

随着时间推移,新矿工不断加入以及IPFS/Filecoin技术与生态的不断发展,全网有效算力将会越来越高,目前每天的释放量已呈现逐渐降低的趋势,随着越来越多人的参与Filecoin挖矿,单T收益将呈现不可逆的下降趋势。