Orphan blocks,也称为孤块,是指有些没有被网络认可的区块,即某一分叉中的所有矿工找到的块并未被大多数矿工认可。孤块没有被认可的原因很多,主要是:
1、紊乱: 区块链全网是一个复杂的系统,矿工们的硬件质量不一,有些低性能的矿工找到的块可能会在全网延迟较大的情况下被同时找到更新的块而被覆盖掉。矿工们找到的最新块也会由于网络不稳定而被覆盖,以致产生孤块。
2、矿池: 在挖矿池的情况下,由于网络延迟,不同挖矿池之间可能会产生某一时间点同时找到同一个块的情况,且有可能会出现矿池一直挖到滞后的块,以致产生孤块和矿池分叉。
3、双花: 在某一时间同时由不同节点出块的情况下,由于特定节点持有先于其他节点收到的挖矿块,会产生某一分叉,而没有被网络接受的块成为孤块。
在同一个区块链网络中,孤块是不可变更和统一的,所有节点在认可某一分叉后,就不再会接受早期的孤块。比特币的目标是找出最长的链,所以比特币的孤块都不会被认可,也不会被它们里面的交易所接受。该网络在每一个阶段都会有大量的孤块,由于拥有非对称算法,它们会在不断地被实施之中而被废弃。