刚接触区块链的人通常都会听到这么一句话:比特币由于总量固定为2100万个,因而具有价值存储的作用,类似于黄金,能够对抗货币增发所带来的货币贬值,因而比特币又有“数字黄金”之称。...
刚接触区块链的人通常都会听到这么一句话:比特币由于总量固定为2100万个,因而具有价值存储的作用,类似于黄金,能够对抗货币增发所带来的货币贬值,因而比特币又有“数字黄金”之称。
实际上,比特币真的不能增发吗? <br> <br> <br>
要回答这个问题,建议可以先阅读一下我之前写的这篇文章,了解一下区块链的硬分叉和软分叉的概念。
<<区块链的硬分叉和软分叉>>
https://zhuanlan.zhihu.com/p/154394498
然后,我们简单说一下关于比特币的2个故事。 <br>
1)比特币早期发展过程中发生的硬分叉的故事(详细见:https://www.sohu.com/a/290736258_120061189):
比特币第一次分叉的时间是在2010年8月15日,黑客对比特币的打击造成比特币几乎崩溃,中本聪设计比特币时将总量设定为2100万,但在这次事件中,比特币的总量有限的设定被打破了,黑客凭空创造出了1844.67亿个比特币,这比2100万足足多出了8748倍。
社区的人很快发现了这一特殊情况,在比特币的74638块上竟然包含了184,467,440,737.09551616个比特币,其中各有922亿个比特币被发送到两个比特币地址。据技术人员分析,黑客是通过利用大整数溢出漏洞,绕过了系统的平衡检查,成功实现了这次攻击。
如果黑客的攻击不得到及时纠正,那么比特币这个项目可能就会死亡。因为如果社区的人意识到比特币可以随意发行,总量固定有限就是一个谎言,那么比特币的价值就会马上暴跌至零。
中本聪和比特币的早期开发人员嘉文安德森在事发3小时内迅速的开发了一个补丁,并在比特币论坛上向社区发出呼吁启动硬分叉。
2个小时后,中本聪正式推出比特币的0.3.1版本,也就是说在此期间比特币存在两条不同的区块链,中本聪密切的监视比特币的区块链并敦促矿工们不要继续在原来的链上挖矿。
终于在社区的齐心合作下,在74691块,带补丁版本的比特币区块链终于追赶上并且超越了原有的出现漏洞的区块链,有惊无险地解决了这次比特币历史上最为重大的危机事件。
事后中本聪向社区公布了这一喜讯,0.3.1版本后的区块链便是我们现在的比特币区块链。 <br>
2)我们再看一下2019年大型加密货币交易所币安(Binance)被盗7000个比特币后,有人提出通过集中超过51%的算力来回滚比特币区块的方式从而取回被盗的比特币,技术上是有可能发生的,但由于比特币社区的强烈反对最终作罢。有兴趣的同学可以阅读这篇文章:https://baijiahao.baidu.com/s?id=1632958490369366900&wfr=spider&for=pc
这里不作详细介绍了。
这里顺带说一下,平时我们会听说过,一笔比特币转账交易发生后,经过6个比特币区块后,这笔比特币转账就是被确认的。这种说法指的是,在一般的情况下,经过6个比特币区块的确认,该笔比特币转账交易是很难被回滚的,具有较高的可信度。这里之所以经过6个比特币区块的确认,要预防的并不是因为担心有人通过集中超过51%的算力来回滚比特币区块的,而是要预防以下的情况:由于网络传输延时或失败的原因,不同的比特币矿工可能接收到的比特币转账交易并不一定是完全相同。同时,由于比特币矿工是通过算力竞争计算出符合出块规则的哈希值结果来获得出块的权利。因而在同一个区块高度,有可能有多个比特币矿工同时计算出符合出块规则的哈希值结果,从而同时获得了出块权而产生不同的区块(这些区块有可能包含了相同的比特币转账交易集合,也有可能不完全相同。比特币转账交易集合不同的区块,区块Id肯定是不一样的。包含了相同的比特币转账交易集合的区块,如果转账交易集合里的交易记录的顺序不一样,计算出来的区块Id也是不一样的。至于区块Id是如何计算出来的,这里就不展开阐述了。区块Id不相同,意味着就是2个不同的区块)。这种情况下,比特币区块链就会形成分叉。而比特币主链是以其中最长的一条分叉链作为主链。比特币区块链上会存在着多条分叉链,有可能在某个时刻,分叉链1是最长的。有可能在另一个时刻,分叉链1变为不是是最长的,而分叉链2变为最长的。这样有可能发生这样的情况:有一笔转账交易A存在在分叉链1上,但不存在在分叉链2上。这时候,原来被确认的转账交易A有可能被回滚。为了避免这种情况的发生,所以一笔比特币转账交易发生后要经过6个比特币区块的确认,这样,这笔转账交易所在的主链很难会被其它的分叉链取代其主链的地位。经过6个比特币区块的确认是一个相对安全的阀值,但这并不意味着该笔比特币转账交易100%是不会被回滚的。那么,要经过多少个区块确认后,一笔比特币转账交易才是绝对安全的呢?这个是没有绝对答案的,只能说,经过确认的区块数越多,该笔比特币转账交易的安全可信度越高。一般情况下,我们也不能等待太长的时间,因为比特币是每约10分钟才产生一个区块,我们一般就经过6个比特币区块的确认就可以了(我认为这6个比特币区块是包括打包该笔比特币转账交易的区块,也就是说,从该笔比特币转账交易成功从钱包发起后,最多等约1个小时就足够了)。 <br> <br> <br>
由此可以看见,由于比特币本质上就是一套公开透明的代码程序,既然是代码程序,意味着就可以被修改,所以从技术的角度来说,比特币是可以通过修改代码来实现总量增发的。但这个问题的关键点不在技术上,而是在比特币矿工们的集体意志上,也就是超过51%算力的矿工是否愿意运行可以增发比特币的比特币代码来实现比特币的增发。如果你是比特币矿工,你愿意这样做吗?肯定不愿意了。因为比特币本来诞生的目的,就是通过发行数量固定为2100万个的比特币来实现价值存储,从而解决货币滥发而导致的货币贬值问题。一旦比特币实行了增发,人们心目中的比特币价值存储的信仰就会被打破,比特币辛辛苦苦通过十多年建立起来的整个信用体系会立即土崩瓦解,从而导致比特币的价格会迅速暴跌甚至归零。作为比特币矿工的你,还愿意采购昂贵的比特币挖矿设备和支付巨大的电费来挖毫无价值的比特币吗?这种以矿工们集体意志来决定比特币发展方向的去中心化的精神,正是比特币的魅力所在!
我的知乎:https://www.zhihu.com/people/powervip
我的github:https://powervip.github.io/
我的公众号:区块链战斗机
我的csdn:https://blog.csdn.net/powervip
我的腾讯微云网盘:https://share.weiyun.com/5qT0TvG
*如果你觉得这篇文章写得还可以,请帮忙点个赞,谢谢!如需转载,请注明原文出处并保留原文链接。
你的鼓励,我的动力!*
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!