比特币挖矿新区块奖励减半机制

在所有的比特币代码规则中,很少有这么受人推崇的规则,那就是对比特币发行量的硬性限制。

在比特币的生命周期中,将会有21,000,000个比特币被发行。所有的比特币均来自创建新区块时对矿工的奖励。

第一个创世区块的奖励设定为50个比特币,此后每新建210,000个区块,奖励减半。

一起来看一下比特币的区块链代码中,关于减半算法的代码。

validation.cpp line 1138
v0.16

CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
    int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
    // Force block reward to zero when right shift is undefined.
    if (halvings >= 64)
        return 0;

    CAmount nSubsidy = 50 * COIN;
    // Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
    nSubsidy >>= halvings;
    return nSubsidy;
}

当区块链数量除以210000大于等于64时,奖励金额直接返回0。

奖励金在2012年当时候从50比特币减半为25比特币,2016年从25比特币减半为12.5b比特币。大概2020年就会再减半为6.25比特币。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。