I will describe Ethereum Classic (ETC) uncle blocks and analyze how much they improve security.

Problem

Scalability requirements encourage bigger block sizes and smaller block creation times. Unfortunately, that impairs the ability of blockchain systems to properly update their networks. If miners do not have updated copies of blockchains, mining resources are wasted making 51% attacks easier to carry out. Furthermore, attackers are not impacted by outdated copies! This is because attackers build upon their own attack chains rather than the latest official blocks. This all especially applies to ETC which has block creation times 40 times smaller than Bitcoin.

Solution

Yonatan Sompolinsky and Aviv Zohar introduced the Greedy Heaviest Observed Subtree (GHOST) blockchain protocol in 2013. This securely allows bigger block sizes and smaller block creation times. GHOST leverages losing (orphaned) blocks to improve security. With GHOST, 51% attacks must surpass the effort to create the official chain, and, to also create the losing blocks!

ETC implements a variant of GHOST. Miners get additional rewards for including losing block headers in winning (official) blocks. The creators of those losing blocks get the same rewards. The official chain is defined as the “heaviest” chain such that losing blocks add to the “weight”. Note the heaviest chain may not be the the longest chain. Because winning and losing blocks share common ancestor blocks, losing blocks are also referred to as uncles. Up to two uncle block headers can be included in any block.

Analysis

Suppose the ETC network has a total amount of honest mining resources H. In other words, H is the amount of mining resources that are not attacking the system. Suppose extreme network issues cause the effective (not wasted) amount of honest mining resources to degrade to D. In that case, two uncle block headers will likely be included in each official block. Therefore, 51% attacks would have to duplicate the work of creating three blocks for every single official block in order to create a heavier chain.

Suppose the goal is to maintain the difficulty of 51% attacks even in the event of extreme network issues. That implies 3D > H or D > H / 3. In other words, assuming the maximum number of uncle block headers, ETC maintains its security against 51% attacks as long it does not lose two thirds of its honest mining resources.

Conclusion

Uncle blocks help secure the ETC system in the event of network issues. In such cases, 51% attacks are not any easier if uncle blocks are fully utilized, and, the honest mining resources do not degrade by more than 66%.

Feedback

Feel free to leave any comments or questions below. You can also contact me by email at cs@etcplanet.com or by clicking any of these icons:

Acknowledgements

I would like to thank IOHK (Input Output Hong Kong) for funding this effort.

License

This work is licensed under the Creative Commons Attribution ShareAlike 4.0

International License.