Orphan, Uncle & Genesis Blocks
Last Updated: 1st November 2018
There are several different types of blocks in the cryptocurrency and blockchain technology space, however, few understand what those are and what they mean. This article will highlight and explain the differences that exists between block types, and the function that they serve within blockchain-based protocols.
The different types of blocks include:
- Orphan blocks
- Stale blocks
- Uncle blocks
- Genesis blocks
Orphan blocks are commonly associated with Bitcoin. They are valid blocks that meet all the necessary requirements needed in order to be added to the blockchain, but are however, still rejected. Orphan blocks occur when two miners produce a block at similar times. This happens because the acceptance of a block into the blockchain by the nodes on a network does not happen instantaneously. Constructed blocks are required to be propagated across the network to all the nodes in order to ensure its validity, at which point latency issues may arise. As a result, another miner can in practice concurrently construct and propagate his/her own block at a similar time. This causes a temporary split in the network as the nodes attempt to decide which block to continue building on. The block with the greater proof-of-work will be the one selected by the network for the continued building of the blockchain. A block's proof-of-work is determined by the amount of energy that was expended in constructing it, the more energy used in creating a block, the greater the proof-of-work. The block with the smaller proof-of-work is not chosen and is referred to as the orphan block. An orphan block can also be produced if an attacker attempts to reverse a transaction.
As can been seen from the image above, two blocks were constructed and relayed to the Bitcoin network on the same date at very similar times, 13:44:19 PM and 13:44:31 PM by mining pools: AntPool and SlushPool respectively. However, because AntPool expended a greater amount of proof-of-work in creating its block, it will be chosen ahead of the block created by SlushPool. Furthermore, it should be noted that even though orphan blocks are valid according to the consensus rules of the Bitcoin protocol, miners do not receive a block reward. In addition, the number of transactions included in a block, as seen above, is not a factor used to determine which block is chosen for the continuation of the blockchain.
Stale blocks are blocks that must be discarded by a miner when another block has successfully be validated by the network. In a bid to solve the mathematical puzzle required so a miner can append the next block to the blockchain, it is common for other miners find the correct solution first. Therefore, a miner must cease working on his/her old, or stale block, and restart the process all over again.
Uncle blocks are commonly associated with the Ethereum protocol and are the equivalent of orphan blocks but with a slight difference. Uncle blocks are still valid blocks that were constructed and rejected by the network. However, unlike with an orphan block where miners are not rewarded for producing them, miners are in fact rewarded for producing an uncle block. For a valid block successfully mined on the Ethereum network, a miner is rewarded with a block reward of 3 Ether. Conversely, the production of an uncle block yields a reward of 2.625 Ether.
The rationale for this is two-fold:
- To promote greater decentralization of mining by still rewarding miners for producing uncle blocks. This facilitates for solo mining as there is still a potential for reward even if the block mined is not included in the main chain.
- Improves the overall security of the chain because a larger aggregate amount of work is done once you factor in computing power needed for a regular block and an uncle block. As a result, no computing power is wasted on uncle blocks.
Genesis block, ironically last but certainly not least, is the very first block in any blockchain-based protocol. It provides the foundation on which an entire blockchain is built on top of. The genesis block for Bitcoin contains a message from its creator, Sataoshi Nakamoto. The message reads as: “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks”. The interpretation of this is very much open, but serves as a fitting message for the genesis block of Bitcoin. Which in some ways, is the genesis block of the entire cryptocurrency and blockchain technology space.