|
为了避免分叉导致的全网不一致,比特币使用了最长链原则来确定一个节点应当选择的分支。在存在多条分叉的情况下,最长的那个分支总是被多数人确认。对于一个挖矿节点来说,选择更长的分支进行后续的挖矿总是有利于自己的。这是因为哈希函数的随机性是很充足的,挖矿节点在当前更短的分支上产生新区块的可能性总是与更长分支上的相同。如果在更短的分支上进行挖矿,便意味着产生的新区块的数量是很难超过同时在更长链上产生新区块的其他节点的。这样一来在更短的分支上挖矿意味着自己产生的区块将更不太可能被全网认可。 同时,最长链原则也保证了前序的区块不可能被随意篡改。如果破坏者修改了一个区块,那么它必须在这个区块上产生一个比当前区块链还要长的分支来获得其他人的认可。这就意味着攻击者必须必其他所有人更快地产生区块来“追赶”当前的合法分支,同时也要求攻击者的算力要比其他人的总和还要高,也就是占据全网算力的51%以上才能够实现。 【出处】郑子彬,陈伟利,郑沛霖.区块链原理与技术.清华大学出版社,2021年3月第1版.
|