003 比特币的发行、记账、加密机制
第0章 复习
上一篇文章中,主要介绍了比特币转账机制和七个区块链的基本概念,让我们来一起复习一下。
比特币的转账机制就像我们使用银行卡转账一样简单:
- 第一步登录你的比特币钱包。
- 第二步选好要从自己的哪一个比特币地址里面去转币。
- 第三步填写收币人的地址以及你要转币的数量,输入手续费。
- 最后你要填写上你的密码进行签名,然后等待矿工打包处理就ok了。
七个区块链的基本概念:
- 第一个挖矿:获得记账权的过程,我们形象地把它叫做挖矿。
- 第二个矿工:矿工是竞争挖矿的人或者组织。
- 第三个算力:假设一台矿机为10T左右的计算量级,就可以说这台10T的矿机有10T的算力。
- 第四个工作量证明:简单理解就是干的越多收获越多,简称POW。
- 六个权益证明:简单理解就是持有越多获得越多,简称POS。
- 第六个区块:平均每十分钟比特币网络会诞生账本上的一页,这一页我们称之为区块。
- 第七个区块链:每个区块被打上时间戳,并按照严格的先后顺序连接起来成为一个“链条”,被称为区块链。
第1章 比特币的发行、记账、交易机制
之前已经讲过,2008年神秘人中本聪发明比特币的时候,当时发生了全球的经济危机。中本聪想如果能够构建一个没有中心机构发行的货币的发行体系,货币就不会被无限超发,这样对大家都很公平。于是中本聪就构建了比特币这样的一个体系。
那么在一个没有中心化机构的情况下,比特币的发行、记账、交易等又是怎样进行的呢?
在构建比特币时,中本聪就做了一些巧妙的规定。
1.1 比特币发行机制
首先,中本聪规定比特币的总量为2100万枚,比特币网络大约十分钟出一页账单(区块),每个比特币的产生伴随着每页账单的产生。也就是说每一个区块问世的时候,比特币也就随之而发行。
中本聪还规定最开始每一个区块比特币的发行量是50枚,然后每21万个区块减半一次,直到2140年所有的比特币发行完毕。
让我们来算一算:平均每十分钟出一个区块,21万个区块需要多久呢?理论上是需要1458.3天,就是3.99年,这就是大众所说的比特币产量每四年减半的由来。
2016年7月8号是比特币最近的一次减半,也是比特币的第二次减半,也就是说每一个区块伴随着比特币的奖励变成了12.5枚。
那我们怎么去计算现在的区块是第多少个区块呢?
很简单,我们一般用区块高度去标记它。一个区块的高度就是从比特币最初诞生以来目前已经发行了多少个区块。
打开任意一个比特币的浏览器(如 btc.com , blockchain.info),我们可以看到现在出来的最新的区块的高度。通过区块的高度,我们可以计算出大概还有多久,比特币会进行下一次减半,以及还有多久比特币会进行难度调整等。
1.2 比特币的记账机制
比特币采用的是工作量证明机制进行记账,即POW机制。所有的矿工通过哈希计算的方式去争夺记账权力,大约每十分钟就有一道数学题被丢到比特币网络中,所有矿工比赛看谁算得快。
在每一轮的竞争中,谁最先计算出正确的答案,谁就获取了本轮的记账权力。其他矿工会以他记录的这一页账单为准,紧接着大家在这一页账单的基础之上,去争夺下一张账单的记账权,
通过这种共识机制,中本聪解决了一个在去中心化的体系下账本的唯一性的难题。
矿工为什么愿意记账呢?
用计算机去进行记账需要耗电,需要消耗大量的存储空间。这样做对矿工有什么好处呢?毕竟纯粹靠公益这样的体系是走不长远。
这就不得不提到中本聪的发明里面最聪明的一个地方:他把比特币的发行和竞争记账这两件事情绑定在了一起,记账的人每获得一次记账的权力,同时也会获得系统新发行产生的比特币来作为奖励。
也就是最快得到结果的计算机就会挖到一定数量的比特币。在每一轮的竞争记账的过程当中,谁获得记账的权力,谁就能够获得这一个区块里新诞生的比特币的奖励,并获得这个区块里面所有交易的手续费。
在2017年,如果你是一个矿工,并且一轮的竞争记账过程中获得了记账权,你就会获得12.5个新发行的比特币奖励,还有这个区块上所有交易的手续费,大概是零点几到两个比特币之间,
随着新生的比特币每四年减半,新生的比特币奖励会越来越少,矿工还会有动力去挖矿吗?
答案是肯定的。我们刚刚提到矿工还有另外一部分收入——比特币转账的手续费。之前的文章我提到在比特币世界里面转账手续费是可以自己填的,随着使用比特币的人和机构越来越多,全球的比特币的转账就会越来越频繁,转账的的手续费的总量也就会越来越大,手续费会未来成为矿工的主要收入来源。
1.3 比特币的加密机制
我们知道比特币的转账跟我们平时进行银行转账的时候一样:先选择一个自己的地址,然后输入对方的比特币地址,输入想要转账的金额,输入我想给的矿工的手续费,然后用私钥签名,提交之后就能够等着矿工来处理了。
中本聪通过加密机制使得随机生成的一个私钥能够对应一个地址,这样就保证了每个地址发出的比特币的合法性,详细的机制我会在后面的进阶文章中进行介绍。
比特币现在每一个区块大小是1M字节,这1M字节大概能够容纳一千笔交易。当网络转账的人比较少的时候,转账可能只需要十分钟左右就能够被下一个区块确认了。但如果当前转账的人比较多,则可能要排队,你可能要多等一个十分钟,甚至更长的时间。
因为矿工们会不断的去从等待记录的转账交易里面去选择手续费比较高的交易来进行记账。如果你的手续费不排在前面,矿工可能要过了很久才会记录你的交易。当然如果你的手续费过低,则可能永远不会被矿工确认,也就是说你的比特币”消失“了。
通过这样的设计,中本聪使得比特币的发行、比特币的记账、转账等环节环环相扣,使整个体系能够自发的运转起来。现在即使中本聪这个核心人物已经销声匿迹,我们在比特币的世界里面,还是能看到它自发的很强的生命力,这就是比特币去中心化的魅力。
此外,虽然比特币的总量只有2100万枚,但是每1枚比特币可以分割到小数点后八位,也就是说1枚比特币可以被分割1亿份(亿分之一个比特币被称为1聪),你可以转给别人非常非常小的一份比特币。
这里要给各位分享一个真实的事情:
第2章 结束语
本文我们了解了比特币的发行、记账和交易的原理:
比特币伴随着每一个区块的诞生而发行。随着区块发行的比特币数量每四年减半。
比特币的记账采用竞争记账方式,即记账者需要通过工作量证明来获得记账的权利。获得记账权利之后进行记账,记账的同时能够获得新生的比特币奖励,以及获得被记录在这一页账单里的所有的交易的手续费,而比特币的交易和银行卡的交易基本上是类似的。
比特币的网络,通过规定发行机制、共识机制、加密技术,将比特币的发行、转账和记账环节环环相扣,形成了一个自发壮大的一个去中心化体系。
第3章 小问题
一个小问题:随着打包的交易数据越来越多,当每个区块的1M字节的容量越来越无法应对的时候,该怎么办呢?