Hardfork

Overview

In blockchain networks, a hardfork is a critical mechanism to introduce significant changes to the protocol while maintaining network stability and consistency. Blockchains operate across multiple computers (nodes), and to ensure consistent behavior, all nodes must produce matching data and responses for transactions.

If code changes are deployed directly (affecting MPT data or transaction responses), and only some nodes update their code, state hash mismatches can occur, leading to network instability or a complete halt. A hardfork is used to prevent such scenarios.

A hardfork allows code changes to be implemented while ensuring all nodes transition to the new logic simultaneously at a specific activation round. Until that point, all nodes operate under the old rules, even with the new code deployed. This ensures:

  • All nodes can update their servers without affecting the existing network.

  • Once the specified round is reached, all nodes execute the new logic without any mismatches.

How Hardforks Work

  1. Code Deployment:

    • Changes to the blockchain logic are implemented in the codebase but remain inactive.

    • All miners, sharders, and blobbers continue using the old rules until the hardfork is activated.

  2. Node Update:

    • Participants in the network are notified to update their servers with the new code.

    • Nodes must update their code before the specified hardfork round to avoid inconsistencies.

  3. Activation Round:

    • A round number is pre-defined in the codebase for the hardfork activation.

    • At this round, the network switches to the new protocol, and all nodes begin using the updated logic.

  4. Consistency Across Nodes:

    • Since all nodes have the updated code and know the activation round, miners and sharders execute the changes in sync, avoiding issues such as state hash mismatches.

Example: For the hardfork Artemis, changes to MPT data and transaction responses were deployed, but these changes were inactive until the hardfork round. All miners and sharders updated their code, and after activation, they executed the new logic seamlessly, maintaining network stability.

List of Hardforks

Below is the list of hardforks implemented in the network, along with their version numbers:

  1. Apollo - Version 1.12

  2. Ares - Version 1.13

  3. Artemis - Version 1.14

  4. Athena - Version 1.15

  5. Demeter - Version 1.16

  6. Electra - Version 1.17

  7. Hercules - Version 1.18

  8. Hermes - (Hotfix; part of Version 1.18)

Check out the release notes here.

Release notes and details for new hardforks will be added as they are implemented. This ensures developers, node operators, and users stay informed about the latest updates and their implications for the network.

Last updated