九、区块链的形成及小总结
我们从头梳理一下比特币的运行过程。2009年1月3日,中本聪创立了比特币系统,当时全网没有算力,只有他在挖矿,所以很顺利,它计算出了满足第一个区块hash条件的随机数,并计算出了此区块的hash值,同时得到这个区块的奖励,50个btc。
最初几个月,几乎没人来参与,渐渐地人一点点的变多,每个时刻开始有交易产生,随着全网算力的提升,系统要平衡hash值的计算难度,为了保证有人记录10min左右的交易记录,因为10分钟的交易记录不多不少刚刚好。如果hash值太简单,一秒钟就被人破解出来,所生成区块的交易记录就存储得太少;反之,如果计算难度太大,那每个区块需要打包的交易记录又太多,所以就要用合适随机数难度、将之平衡到十分钟一个区块。
现在,这个系统有一定的矿工维系这记账的责任,有一定的玩家有日常的交易需求,矿工们开始辛勤的挖矿即不断尝试每个区块的随机数直到尝试出来符合当前hash值规则所要求的hash值,当尝试出一个随机数并成功时,会马上向全网广播“我成功啦,我得到奖励了,兄弟们赶紧在我后头继续挖啊”,大家会将他公布的随机数进行验证,发现基于这个随机数所求得的hash值确实所要求的hash值规则,那大家就认可了,并这个区块的标题就定为这个hash值。基于这个hash值,大家再去奋力计算一个区块的hash值,如此go on and on,区块链就形成了。
区块链,它到底是怎么链在一起的呢?难道一个区块和一个区块之间真有一条链子吗?是这样的,区块就是每10min的交易记录,区块链就是区块连接起来的整体,这就记录了所有的交易信息,所以中本聪09年的那个区块叫创世区块。每个区块所包含的信息是:上一个区块hash值(表明连接关系) 本区块的hash值(id) 本区块交易记录 本区块随机值(用以调整本区块hash值难度)。
这下子大家明白了,区块之间为什么能链起来,就是因为每个区块都包含了上一个区块的hash值,那当然就链接了起来,仿佛区块在排队,一个跟着一个,谁也别插队。这也保证了,谁也无法篡改交易记录,因为一旦更改区块内容,会改变此区块hash值,导致链接关系发生混乱了,那就会被大家所发现。注意,hash值对初值极其敏感,随意修改一点点就会造成完全迥异的hash值,会产生混沌,发生蝴蝶效应。谁敢篡改,就会飞蝴蝶,蝴蝶一飞,系统发生大地震,谁人不知呢?
如下图就是区块链,其中省略了交易记录和随机值
FIG1这个图是一个block的样子
FIG2
有了这个区块链,意味着网络的每一个节点都存储了本聪开创比特币以来的所有交易记录,每一条信息谁都可以查。这个系统可真是太棒了。但它有没有漏洞呢?还真有,nothing is perfect。
版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。