比特币的实质就是一组方程的特解,而这个方程组的特解只有2100万个,对于这个解释个人比较疑惑。
其实按照比特币设计原则,如下计算:
每四年的区块数量如下:
6 blocks per hour * 24 hours per day * 365 days per year * 4 years per cycle = 210,240 ~= 210,000
因为每四年一个区块得到的比特币减半,而初始时一个一个区块奖励50个比特币,那么总量计算如下:
210,000 * (50 + 25 + 12.5 + 6.25 + 3.125 + ...) = 210,000 * 100 = 2100万
至于比特币是如何设计做到10分钟生成一块区块的,可以先了解下什么是挖矿。
参与者根据上一个区块的hash值,10分钟内的验证过的交易 内容,再加上自己猜测的一个随机数X,让新区块的hash值小于比特币网络中给定的一个数。
这个数越小,计算出来就越难。系统每隔两周(即经过2016个区块)会根据上一周期的时间来调整。
参考:
https://bitcoin.stackexchange.com/questions/8439/why-was-21-million-picked-as-the-number-of-bitcoins-to-be-created