title: Simulation and analysis of fork behaviour in the Ethereum blockchain
Creators: name: Wegscheider, Lukas
Publisher: name: :none
Year: 2024

description: Forks sind ein Phänomen, das in permissionless Blockchains wie Bitcoin oder Ethereum auftritt, die auf dem Nakamoto-Konsens basieren. Forks führen zu konkurrierenden Chains und daraus folgenden widersprüchlichen Zuständen einer Blockchain. Ein entscheidender Aspekt des Nakamoto-Konsenses ist die Nicht-Finalität, die bedeutet, dass Transaktionen oder Blöcke nicht sofort als abgeschlossen betrachtet werden können. Diese können widerrufen oder nicht in einen Block aufgenommen werden, falls eine konkurrierende Chain entsteht, die mehr akkumulierte Rechenleistung oder eine andere dominante Ressource aufweist, die im Konsensverfahren relevant ist. Die Forschung zu Nicht-Finalität und Forks ist ein Thema mit vielen offenen Fragen, sowohl auf theoretischer Ebene als auch in Bezug auf das praktische Verständnis der Risiken dieser Phänomene. Empirische Daten zu Forks sind jedoch selten. Obwohl Blockchains als unveränderliche, öffentliche Systeme gelten, werden Fork-Daten oft nicht aufgezeichnet und sind schwer zu beschaffen. Dies macht es notwendig, Fork-Daten aktiv zu überwachen, um ein vollständigeres Bild zu erhalten. Angesichts der potenziell negativen Auswirkungen, die Forks auf ein Netzwerk haben können – wie der DAO-Hack, der zur Spaltung zwischen Ethereum und Ethereum Classic führte – ist dies überraschend. Solche Ereignisse haben die Risiken der Blockchain-Sicherheit und der Konsensmechanismen aufgezeigt und unterstreichen die Notwendigkeit einer tiefergehenden Erforschung des Fork-Verhaltens. Während des risikoreichen Wechsels von Ethereum von Proof-of-Work zu Proof-of-Stake, bekannt als „The Merge“, bestand ein erhebliches Risiko unbeabsichtigter Forks. Diese Gefahr ergab sich aus Protokoll-Updates und möglichen Implementierungsfehlern der Software. Tatsächlich trat dieses Risiko ein, und es kam zu einem Fork, der, soweit bekannt, in der Community und unter Forschern weitgehend unbemerkt blieb. Durch die Überwachung dieses Übergangs konnten wir Daten zu diesem Fork sammeln, was den Ausgangspunkt und die Motivation für diese Arbeit darstellt. Diese Arbeit verfolgt drei Hauptziele, um diese Herausforderungen zu adressieren und ein tieferes Verständnis für Forks zu entwickeln. Erstens soll durch eine empirische Analyse von Fork-Daten, insbesondere des beobachteten Merge-Forks, ein besseres Verständnis für Forks erreicht werden. Zweitens wird ein umfassender Überblick über die Literatur zu Forks geboten, der den aktuellen Forschungsstand darstellt und Lücken sowie offene Fragen identifiziert. Drittens werden Methoden entwickelt, um Forks und ihre Auswirkungen besser zu verstehen, ohne aktive Überwachung. Dazu gehört die Entwicklung eines Blockchain-Fork-Simulators, um Fork-Szenarien zu modellieren und zu analysieren. Durch die Erreichung dieser Ziele trägt diese Arbeit zu einem umfassenderen Verständnis von Blockchain-Konsensprotokollen bei, insbesondere im Kontext von Nicht-Finalität und Forks. Der entwickelte Simulator stellt ein wertvolles Werkzeug für Forscher dar, um die Auswirkungen von Forks zu untersuchen und nachzubilden, mit dem Ziel, die Zuverlässigkeit und Robustheit von Blockchain-Systemen zu verbessern.
description: Forks are a phenomenon that occur in permissionless blockchains utilizing variants of Nakamoto Consensus, such as Bitcoin or Ethereum, leading to competing chains and conflicting states. Non-finality, a consequence of the Nakamoto Consensus and forks, means that transactions or blocks are not immediately final and can be revoked or not included in any block if a competing chain with greater accumulated Proof-of-Work or another dominant resource, based on the consensus technique, emerges. Research on non-finality and forks is an active area with many open questions, both theoretically and in terms of understanding the risk of these phenomena in practice. Empirical data on forks is scarce, and although blockchains may appear to be immutable public ledgers, data on forks is generally not recorded and is challenging to obtain, since actual fork data has to be actively monitored. This is surprising given the potential negative impact forks can have on the network, as demonstrated by events like the DAO hack, which led to the split between Ethereum and Ethereum Classic and the fork between Bitcoin and Bitcoin Cash. These events showcased limitations in blockchain security and consensus mechanisms, highlighting the need for a deeper exploration of fork behavior. During Ethereum’s transition from Proof-of-Work to Proof-of-Stake, a high-risk consensus change known as The Merge, the potential for unintended forks was high due to protocol upgrades and possible client implementation bugs. This risk was evident and did come true: a fork occurred that, to our knowledge, is not known within the community or among researchers. By monitoring this transition, we could retrieve data from this fork and this observation forms the motivation and starting point of this thesis. The transition confirmed noteworthy security challenges and underlined the potential for unintended forks, further emphasizing the critical nature of this research. This thesis sets out three core objectives to address these challenges and gain a deeper understanding of forks. Firstly, it aims to better understand forks through empirical analysis of fork data, mainly focusing on the observed merge fork. Secondly, it provides a comprehensive overview of the literature on forks, presenting the current state-of-the-art research and identifying gaps and open questions. Thirdly, it develops and adapts methods to better understand forks and their impact, which do not require active monitoring. Specifically, this includes the development of a blockchain fork simulator to model and analyze fork scenarios. By achieving these objectives, this thesis contributes to the broader understanding of blockchain consensus protocols, particularly in the context of non-finality and forks. The proposed simulator offers a valuable tool for researchers and developers to study and imitate the effects of forks, ultimately aiming to enhance the reliability and robustness of blockchain systems.