In the past, an orphan block was a regular occurrence on the Bitcoin blockchain. An older definition involved a blockchain network proposing a block that couldn’t be validated due to a lack of information from previous blocks.
Now, an orphan block is defined a bit differently. Keep reading and find out more.
What Is an Orphan Block?
An orphan or stale block is a block that was successfully mined and broadcast to the network but was rejected because another same-hight block had been added before the network confirmed the orphan block. These orphaned blocks collectively form what could be called an orphan block quilt, representing a patchwork of blocks that were validly mined but never made it onto the main chain.
A blockchain contains a chain of blocks, with one block comprising data regarding the previous block. After being added to the blockchain, the block passes its data to the next block, with the preceding block being the parent block and the new one being the child.
How Does an Orphan Block Originate?
Stale blocks are typically created by factors like the speed of the node hosting the blockchain copy, block size, propagation delay, network lags, and the blockchain copy length. Detached blocks occur when two valid child blocks are opened from the same parent block or mined simultaneously. Then, the blockchain divides into two competing network copies until one of the child blocks is abandoned.
Yet, as new blocks are continuously generated, miners may add them on top of one of the chains, and one chain will ultimately grow longer than the other. So, the network nodes eliminate the shorter chain and use the longer one. The shorter, abandoned chain becomes part of what can be called an orphan network, consisting of detached blocks that were not added to the main blockchain.
Still, the detached chain blocks don’t just disappear but are returned to the mempool or an orphan block files pool so that they are validated and included in a new chain. These blocks form what’s known as an orphan line, as they are temporarily left out of the main blockchain. Stale blocks happen by chance, but in some cases, attackers may generate them to create a separate valid chain to carry out a 51% attack, a type of double-spending attack.
Where Are Orphan Blocks Stored?
These blocks don’t enter the blockchain but are temporarily stored in an orphan block pool. In this pool, they are listed separately from the main blockchain. It’s worth noting that a blockchain orphan block that lacks a parent block can be included in the blockchain later when the previous block that caused the creation of the orphan block is added.
How Are Orphan Blocks Different From Uncle Blocks?
Proof-of-work blockchains often faced orphan blocks, and they can still experience them sometimes. Uncle blocks were similar to them and occurred on the Ethereum blockchain before it moved from proof-of-work to proof-of-stake. They were mined simultaneously as other blocks but weren’t accepted on the main chain.
While Bitcoin and similar blockchains didn’t reward miners who proposed an orphan block, Ethereum did reward uncle block producers. With Ethereum’s proof-of-stake transition, uncle blocks were effectively eliminated in 2022, as the block-producing mechanism isn’t competitive like BTC’s.
According to current definitions, orphan and stale blocks refer to the same block type. The network abandons them because they have less proof than another chain.What Is the Difference Between Stale and Orphan Blocks?
Conclusion
An orphan block is a block that was successfully mined and broadcast to the network but was rejected because another same-hight block had been added before the network confirmed the orphan block. In the past, these blocks were a regular occurrence on the Bitcoin blockchain. The blocks don’t enter the blockchain but are temporarily stored in an orphan block pool.
Uncle blocks were similar to orphan blocks and occurred on the Ethereum blockchain. While Bitcoin and similar blockchains didn’t reward miners who proposed an orphan block, Ethereum did reward uncle block producers. Uncle blocks were effectively eliminated with Ethereum’s proof-of-stake transition in 2022.
FAQs
What happens to transactions in orphan blocks?
Under what circumstances would a node receive an orphan block?
What are uncle blocks?