比特币每4年产量下降一倍,但既然比特币是一个去中心化的系统,而且算力也并不是每4年上升一倍,那么,谁来维护这个分配奖励的设定,保证无论算力如何,一定时间内产出的一共就那么多呢?
A: 比特币挖矿本质上是计算一个hash值,最后得到的结果小于一个大家公认的数,大家就承认你挖到了。举个最简化的模拟(实际算法和细节都不一样的):
sha256(timt.time*m ) < difficult
指定difficult,求m,谁先找到m值谁就求解成功。
很明显,difficult越小,这个m值越难求解,我们把difficult称之为难度。
求解m的人会越来越多,本来平均10分钟会有人求解成功,变成平均5分钟就有人算出来了,而每次求解成功,系统都会发放奖励,这样就会违背比特币系统生产速率恒定的初衷,于是系统会自动减小difficult,也就是所谓的提升难度。提升周期大概为2周一次。
难度并不总是上升的,如果算力下降,难度也会下降,这样就维持比特币产出在长时间周期内大概是平稳的。
谁来维护呢?就是参与这个系统的所有节点来维护,如果你算的这个m值是个瞎猜的数,大家都不承认,那你挖出的这个区块只能自娱自乐,没法并到主链上,自然一文不值。
Q:既然比特币是通过记账来得到奖励的,那么考虑最极端的情况,比如比特币刚刚诞生,还没有人进行转账交易的时候,“挖矿”是如何获得奖励的呢?
A: 每次求解m成功的人都能得到系统奖励,最初是50BTC,每四年减少一半,现在是12.5BTC;中本聪设想的是早期BTC价值不高,需要奖励矿工来维持全网算力,后期比特币世界足够繁荣,就可以依靠手续费用,需要矿机加壹无久灵贰气六吴乙贰舞,不用发放奖励来维持全网算力了。这个时间也很容易推算,大概2020年就会再减半为6.25BTC,这其实已经和现在每区块的交易费用相当了;具体可以参考wiki:
Controlled supply
Q:奖励四年减半的细节
A:在中本聪的设计里面,每挖出21万个区块,区块奖励就会减半:第1-210000个区块,每块奖励50btc,第210001-420000个区块,每块奖励25btc……以此类推。
容易看出,这是一个公比为0.5的等比数列,而这个数列的和为210000×50(1+0.5+0.25+0.125+……)=2100万,即BTC总量2100万的来源。
在比特币系统里面,打包一个区块的时间大约是十分钟。也就是说理论上,每210万分钟,新币的发行速度就会发生一次减半,换算成年就是大约3.995年。
这就是江湖上流传的“四年减半”这个说法的由来。由于比特币的算力一直在快速增加,导致系统平均出块时间略小于10分钟,因此实际上的减半时间比理论值3.995还要更短一些。
历史上也是这么发生的,我们知道,比特币的创世区块于2009年1月3日被挖出,而比特币的第一次减半则发生于2012年11月28日,中间间隔共计1425天,约合3.90年;第二次减半在2016年,现在每个区块的奖励已经变成12.5BTC了,目前平均每个块的交易费用大概是4~5BTC,也就是说,下次减半之后,交易手续费和奖励费用差不多会持平了。
网友评论