技术角度聊聊比特币减半

什么是比特币减半,如何实现及与价格的关系?

比特币明天早上又要减半了, 回答几个老生畅谈的问题: 1. 什么是比特币减半? 2. 为什么要减半? 3. 谁控制了比特币减半(主要是有写传统开发人员理解不了去中心化)? 4. 比特币减半是如何实现的? 5. 比特币减半后币价就会涨么? ## 什么是比特币减半? 准确来岁是指比特币区块[挖矿](https://learnblockchain.cn/2019/10/31/7mining)奖励减半,在中本聪共识协议里, 为了鼓励大家参与记账,设置了记账的奖励,这个奖励也是比特币发行的方式。 最初的区块奖励为50个比特币,每经过210000区块后,区块奖励将为上一次的一半。 下图是历次奖励减半的时间表: | 时间 | 区块号 | 奖励 | | ---------- | -------- | ------- | | 2009/01/09 | 1 | 50BTC | | 2012/11/28 | 210001 | 25BTC | | 2016/07/10 | 420001 | 12.5BTC | | 2020/05/12 | 630001 | 6.25BTC | | ... | ... | ... | | ~2140年 | 13440001 | 0 | 注意:很多人说比特币每隔四年减半一次,不准确的,实际是每经过210000区块减半一次, 只是安装当前的出块速度,大约每4年奖励减半一次。直到经过 64 次减半后(届时将发行完所有的 2100 万枚比特币),将不再有新区块奖励,挖矿只能获得交易的手续费。 ## BTC奖励为什么要减半? 为什么不保持一个相同的奖励?大家知道稳定价值的最好的限制产量(或流通量),石油和黄金是最好的例子,货币也是一样,很多的货币就是在贪婪的政府一次次恶性发行中贬值。 如果比特币的发行不受控制,创建的比特币无止境,就无法承载价值,比特币的发行模拟了黄金开采的过程,金矿随着开采时间越来越长,能开采的黄金将越来越少。这也是为啥数千年来黄金一个是一个重要的价值交换媒介。 比特币也是使用类似的方式控制通胀率以保持稳定的价值,因此有些人也称比特币为“数字黄金”。 ## 谁控制了比特币减半? 在传统开发人员思维里,代码是人写的,我为什么就不能更改奖励了? 这是中心化思维与去中心化思维产生的差异。 比特币是一个由成千上万客户端组成的一个网络, 每个客户端是各自独立的个体,运行的自己的逻辑,但只有自己运行的逻辑经过别人验证通过后,才可以在网络上传播生效。 如果没有办法更改让其他千上万客户端更改验证方式,那么你的修改就没法再网络上生效,就是这么简单。 维有按照大家都认可的方式记账,这就是共识,共识的力量, 共识控制了比特币减半的逻辑。 ## 比特币减半是如何实现的? [比特币奖励减半的代码](https://github.com/bitcoin/bitcoin/blob/master/src/validation.cpp#L1238)其实非常简单,就是下面这个函数: ```cpp 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; } ``` 这个函数是根据区块的高度获取区块的奖励数量。 * nHeight 是当前区块高度 * consensusParams.nSubsidyHalvingInterval 是减半间隔区块数,为常量 210000 * halvings,为减半次数,它是一个整型,只保存整除的整数。 * `if (halvings >= 64) return 0;` 当减半 64 次之后,奖励为 0 * `CAmount nSubsidy = 50 * COIN;` 初始奖励是 50 个币,COIN 是以聪为单位的比特币数量 * `nSubsidy >>= halvings; ` 使用右移位计算最终奖励,每右移一位相当于除以2。 ## 比特币减半后币价就会涨么? 也许是大家最关心得话题,理论上比特币减半后,发行量变少了, 如果需求不变的话,价格会上涨,但是实际上真的如此么?上面列出历次奖励减半的时间, 我们看看但是的价格,以 2016 年 7 月减半来看: ![价格趋势图](https://img.learnblockchain.cn/pics/20200511123833.png) 上面的图是 2016 年 7 月发生的**减半时当时的价格几乎没有什么波动**, 直到17 年下半年才开始快速上涨的。 17 年下半年的上涨是因为减半吗,当然不是,而是因为 ICO 兴起了。 同样可以断定需要需求没有大的变化(例如 DEFI 应用导致对币的使用需求增加)价格依旧不会有大的波动。 **结论:减半只是一个炒作的借口而已**。

比特币明天早上又要减半了, 回答几个老生畅谈的问题:

  1. 什么是比特币减半?
  2. 为什么要减半?
  3. 谁控制了比特币减半(主要是有写传统开发人员理解不了去中心化)?
  4. 比特币减半是如何实现的?
  5. 比特币减半后币价就会涨么?

什么是比特币减半?

准确来岁是指比特币区块挖矿奖励减半,在中本聪共识协议里, 为了鼓励大家参与记账,设置了记账的奖励,这个奖励也是比特币发行的方式。 最初的区块奖励为50个比特币,每经过210000区块后,区块奖励将为上一次的一半。

下图是历次奖励减半的时间表:

时间 区块号 奖励
2009/01/09 1 50BTC
2012/11/28 210001 25BTC
2016/07/10 420001 12.5BTC
2020/05/12 630001 6.25BTC
... ... ...
~2140年 13440001 0

注意:很多人说比特币每隔四年减半一次,不准确的,实际是每经过210000区块减半一次, 只是安装当前的出块速度,大约每4年奖励减半一次。直到经过 64 次减半后(届时将发行完所有的 2100 万枚比特币),将不再有新区块奖励,挖矿只能获得交易的手续费。

BTC奖励为什么要减半?

为什么不保持一个相同的奖励?大家知道稳定价值的最好的限制产量(或流通量),石油和黄金是最好的例子,货币也是一样,很多的货币就是在贪婪的政府一次次恶性发行中贬值。

如果比特币的发行不受控制,创建的比特币无止境,就无法承载价值,比特币的发行模拟了黄金开采的过程,金矿随着开采时间越来越长,能开采的黄金将越来越少。这也是为啥数千年来黄金一个是一个重要的价值交换媒介。

比特币也是使用类似的方式控制通胀率以保持稳定的价值,因此有些人也称比特币为“数字黄金”。

谁控制了比特币减半?

在传统开发人员思维里,代码是人写的,我为什么就不能更改奖励了? 这是中心化思维与去中心化思维产生的差异。

比特币是一个由成千上万客户端组成的一个网络, 每个客户端是各自独立的个体,运行的自己的逻辑,但只有自己运行的逻辑经过别人验证通过后,才可以在网络上传播生效。

如果没有办法更改让其他千上万客户端更改验证方式,那么你的修改就没法再网络上生效,就是这么简单。

维有按照大家都认可的方式记账,这就是共识,共识的力量, 共识控制了比特币减半的逻辑。

比特币减半是如何实现的?

比特币奖励减半的代码其实非常简单,就是下面这个函数:

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;
}

这个函数是根据区块的高度获取区块的奖励数量。

  • nHeight 是当前区块高度

  • consensusParams.nSubsidyHalvingInterval 是减半间隔区块数,为常量 210000

  • halvings,为减半次数,它是一个整型,只保存整除的整数。

  • if (halvings >= 64) return 0; 当减半 64 次之后,奖励为 0

  • CAmount nSubsidy = 50 * COIN; 初始奖励是 50 个币,COIN 是以聪为单位的比特币数量

  • nSubsidy >>= halvings; 使用右移位计算最终奖励,每右移一位相当于除以2。

比特币减半后币价就会涨么?

也许是大家最关心得话题,理论上比特币减半后,发行量变少了, 如果需求不变的话,价格会上涨,但是实际上真的如此么?上面列出历次奖励减半的时间, 我们看看但是的价格,以 2016 年 7 月减半来看:

技术角度聊聊比特币减半插图

上面的图是 2016 年 7 月发生的减半时当时的价格几乎没有什么波动, 直到17 年下半年才开始快速上涨的。

17 年下半年的上涨是因为减半吗,当然不是,而是因为 ICO 兴起了。

同样可以断定需要需求没有大的变化(例如 DEFI 应用导致对币的使用需求增加)价格依旧不会有大的波动。

结论:减半只是一个炒作的借口而已

区块链技术网。

  • 发表于 2020-05-11 12:41
  • 阅读 ( 1979 )
  • 学分 ( 183 )
  • 分类:比特币

评论