区块链 - 处理冲突


章节


比特币网络中,包含了多个矿工。有一种情况是可能的,2个不同的矿工同时完成了工作量证明,同时将新区块添加到链中,区块链分叉了。如下图所示:

![图]( https://imgconvert.csdnimg.cn/aHR0cHM6Ly93d3cucWlrZWd1LmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxOS8wOS9yZXNvbHZpbmdfY29uZmxpY3RzLmpwZw?x-oss-process=image/format ,png)

现在,在Block 103之后分叉了,有两个分支,都是有效的。下一个区块可以添加到其中任何一个分支中。假设矿工将新挖掘的区块添加到Block 104-A,包含Block 104-A的分支将比另一个分支长。如下图所示

![图]( https://imgconvert.csdnimg.cn/aHR0cHM6Ly93d3cucWlrZWd1LmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxOS8wOS9iaXRjb2luX2FyY2hpdGVjdHVyZS5qcGc?x-oss-process=image/format ,png)

区块链网络中,最长的分支会被保留,较短的分支则被废除。所以这里104-B块会被清除。在清除此块之前,此块中的所有交易将返回到交易池,它们将被添加到未来的某个块中。这就是解决冲突的方法,系统只维护一个区块链分支。

posted @ 2020-04-01 12:56  吴吃辣  阅读(491)  评论(0)    收藏  举报