算得最快的那个人在完成自己的计算任务后会大声告诉网络中的其他人:“你们看,我算好了”其他矿工一看没毛病,就把他算的这个题都抄一份加到各自账本的最后一页,然后接着算下一个题目。这就是比特币挖矿采用的工作量证明机制(pow),即谁算得又快又准确,我们就认可它。并把他计算的这个区块添加到区块链的最后一环。但是这个过程中就有可能会出现一种状况:即有两个矿工在同一时间算出了这道题,那么会发生什么呢?
由于这两个区块同时产生,我们把他们分别称为区块A和区块B,在网络中不同的节点因为距离的远近,他们有一部分人先看到了区块A,于是他们就把A当成此区块链条的最后一个区块,并根据区块A开始计算下一个区块A+1...;而另一部分人可能离区块B比较近,他们就以B开始计算下一个区块B+1...这样就形成了两条链,这种现象就叫做“分叉”。
分叉又如何确保整条区块链数据一致呢?目前采用“六次确认”的方法来解决这个问题,具体操作如下图:
所以最终还是只有一条链被保留了下来,成为真正有效的账本,也保证了区块链的唯一性。当然,这个也有个前提,就是 所有的矿工都遵循这个规则。
领取专属 10元无门槛券
私享最新 技术干货