24 May, 23

London Hard Fork: The Long-Term Ramifications

london hard fork lab banner
beau chaseling headshot
Beau Chaseling

Innovation Analyst

Blockchain networks can be analogised to bustling highways for transactions, with tolls paid in gas fees. Designed to reform its fee market, the London hard fork was a major upgrade of the Ethereum network. Primarily, it transformed how tolls are calculated on the Ethereum highway, offloading volatility in toll prices with volatility in the number of lanes on the highway. It changes the way in which tolls are paid and how they are used to fund the operation of the highway. In doing so, the updated fee market solves certain inefficiencies in the existing market, facilitating a cheaper and more efficient transacting experience for Ethereum users.

What Is The London Hard Fork?

The London Hard Fork was an upgrade of the Ethereum blockchain that was activated on August 5th, 2021. It introduced several changes to the Ethereum network, including five Ethereum Improvement Proposals (EIPs) that were designed to improve the network’s security, efficiency, and overall user experience. Fundamentally, the London Hard Fork was aimed at updating Ethereum’s transaction fee mechanism to make gas fees less volatile and transactions more efficient. However, it included a number of other upgrades to reduce gas costs, encourage regular network upgrades and improve smart contract storage and execution. 

EIP-1559 is the cornerstone of the London Hard Fork, heralding the most significant change introduced to the network. It was designed to change the way in which transaction fees are calculated on Ethereum to reduce gas fee volatility and gas prices overall. The London Hard Fork also included EIP-3198 which allows smart contracts to access the base fee of a block, improving network efficiency and reducing failed transactions, whilst concurrently enabling new use cases such as gas futures and setting bounties. Additionally, EIP-3529 reduced gas refunds for specific functions to mitigate harmful effects and balance gas cost optimization with preserving important use cases. To improve the validation of contracts conforming to the EVM Object Format (EOF) EIP-3541 has disallowed the deployment of new contracts with a particular byte sequence. Finally, the London Hard Fork included EIP-3554, which delayed the “difficulty bomb,” a mechanism designed to encourage regular network upgrades by making it increasingly difficult to mine new blocks. This delay gave developers more time to work on the Merge upgrade without causing significant disruptions to the blockchain.

EIP-1559: Fee Market Change for ETH 1.0 Chain

EIP-1559 is a proposal that improved the user experience on Ethereum by introducing a new transaction fee mechanism. It was proposed to tackle one of the biggest challenges facing Ethereum: high and volatile transaction fees. The new system was designed to reduce the volatility of gas fees and provide greater predictability for users, making it easier and more cost-effective to use Ethereum.

The Problems With Ethereum Gas Fees

Prior to the implementation of EIP-1559 in August of 2021, gas fees worked via a simple auction mechanism whereby miners would prioritise those transactions which were paying the highest gas price. Gas fees were calculated based on a simple equation: 


Gas Fee (gwei)=Gas Units (limit)Gas Price Per Unit (gwei)

Miners would choose the transactions paying the highest gas price per unit to include them within blocks. Furthermore, blocks included a hard per-block gas limit which capped the number of gas units that could be included. This system caused several drawbacks. 

The pre-London Hard Fork hard per-block gas limit caused major volatility in gas fees and transaction wait times. Since activity on Ethereum was frequently sufficient to ensure that most blocks were full, the network often maintained a backlog of transactions in its memory pool (mempool). Hence, the hard gas limit caused an uptick in gas prices as transactors attempted to include their transactions in each block. This led to volatile gas prices, with users often bidding up the price of gas during periods of high demand. Furthermore, prior to the London Hard Fork, transactions often had to wait several blocks before they were included in the blockchain; this was because there was no mechanism in place to allow for flexibility in block sizes to accommodate changes in demand from one block to the next. As a result, users experienced longer wait times for their transactions to be processed in comparison to the quick execution speed presently offered by Ethereum.

In addition to the hard gas limit, the first price auction system relied on by the pre-London system caused several inefficiencies. These inefficiencies arose out of the bidding system, whereby the highest bidder won and paid the amount they bid. This auction mechanism frequently necessitated complex fee estimation algorithms. Since there was no set fee for transactions in a first-price auction system, users had to estimate the maximum amount they were willing to pay to have their transactions processed quickly. Furthermore, these algorithms frequently overestimated the market rate, resulting in the user overpaying gas fees. These inefficiencies could lead to a system where transaction fees were unnecessarily high.

Lastly, blockchains that solely used their transaction fee mechanism to reward miners/validators often encountered instability in the long term. Without block rewards, miners had less of an incentive to mine new blocks, which could lead to slower block times. Additionally, miners could be incentivized to mine “sister blocks” that stole transaction fees from legitimate blocks. Furthermore, the lack of a block reward created stronger selfish mining attack vectors, where a miner could potentially manipulate the blockchain by withholding blocks and only releasing them when it was advantageous to them.

How Does EIP-1559 Work?

EIP-1559 introduced a new gas fee structure that included a base fee and a tip, referred to as a priority fee. The base fee was set by the protocol based on the current network demand. If the network was congested and there were many pending transactions, the base fee increased, and if the network was less congested, the base fee decreased. The base fee was burned, rather than being paid to miners as in the pre-London system. The priority fee was the additional fee offered by the sender to incentivize miners to include their transactions in the next block. Transactions specified a maximum fee they were willing to pay, that covered both the base fee and the priority fee offered to miners for faster processing.

Gas Fee (gwei)=Gas Units(Base Fee (gwei)+Priority Fee (gwei))

The gas fee system was analogous to a taxi service. Users paid a set rate for the service that depended on demand as well as a tip to incentivize priority treatment. Conversely, the pre-London Hard Fork gas fee system operated similarly to a wholesale auction whereby users paying the highest rate for the goods (or in this case blockspace) were prioritised regardless of the quantity they purchased. Under the pre-London system, the totality of transaction fees was paid to miners in addition to a block reward of 2 ETH per block. However, with EIP-1559, the base fee was burned, meaning that it was removed from circulation entirely. Nevertheless, miners still received a tip and the block reward for their services.

london hard fork eip 1559

Furthermore, EIP-1559 replaces the hard per-block gas limit with a variable long-term average gas target of 15 million gas, with block sizes increasing and decreasing in accordance with demand up to a hard limit of 30 million gas. The gas target is achieved via the concept of Tâtonnement, whereby the base fee is proposed and adjusted in accordance with network congestion to reduce demand until the gas target is achieved. This ensures that gas fees remain in accordance with network demand without encountering excessive volatility. While the previous hard gas limit was more akin to a dam, with a fixed maximum capacity, the variable gas limit implemented in EIP-1559 is more akin to a spillway, with the capacity to accommodate more than the long-term average:

london hard fork hard block gas limit variable block gas limit

Gas Fees And Incentives

EIP-1559 proposed a new fee market mechanism for the Ethereum 1.0 blockchain that addressed several inefficiencies and challenges with the existing fee auction model. Under the pre-London Hard Fork system, users bid on the gas price they were willing to pay to have their transaction included in the next block, and miners selected transactions with the highest bids to include in the block. This could lead to high volatility in transaction fees and unnecessary delays for users, as well as inefficiencies and instability in blockchains with no block reward.

EIP-1559 introduced a base fee per gas that was algorithmically determined based on the current state of the network. This base fee was intended to reflect the true cost of including a transaction in a block and was adjusted up or down based on the congestion of the network. If blocks were consistently full, the base fee increased slightly over time, while if blocks were mostly empty, the base fee decreased. The base fee per gas was also burned, meaning that it was destroyed by the protocol rather than being paid to miners.

In addition to the base fee, transactions also included a maximum fee per gas that they were willing to pay to have their transaction included. This maximum fee included both the base fee and a priority fee, which compensated miners for the risk of including a transaction that may not be included in the next block. Transactions always paid the base fee per gas of the block they were included in, as well as the priority fee specified in the transaction, as long as the maximum fee per gas was not exceeded.

The introduction of the base fee per gas was intended to address the volatility in transaction fees seen under the current fee auction model. Because the base fee was algorithmically determined, it was expected to be more stable and predictable than the current fee auction model. This was supposed to make it easier for users to estimate the fees needed to have their transactions included in a timely manner, without having to rely on complex fee estimation algorithms or overpaying for transactions.

The game theory behind EIP-1559 was also important to consider. Under the current fee auction model, there was a strong incentive for users to overbid on gas prices to ensure that their transaction was included in the next block. This could lead to unnecessary congestion and higher transaction fees for everyone. EIP-1559 introduced a more efficient fee market that was designed to incentivize users to set reasonable gas prices, as well as incentivize miners to include more transactions in each block.

By introducing a base fee that was burned and prioritising transactions based on the total fee paid rather than just the gas price, EIP-1559 changed the incentives for both users and miners. Users were incentivized to set a maximum fee per gas that accurately reflected the value of their transaction, rather than simply trying to outbid other users. Miners were incentivized to include more transactions in each block, since they would receive a larger share of the total fee paid by each transaction.

There were also security considerations to take into account with EIP-1559. One concern was the possibility of increased max block size and complexity due to the more efficient fee market, which could lead to longer block propagation times and potential for network forks. Additionally, the fact that the base fee per gas was burned could have implications for the long-term sustainability of the Ethereum network, as it reduced the amount of ETH in circulation and could potentially lead to deflationary pressures.

Multidimensional EIP-1559

In a blog post made in January 2022, Vitalik Buterin proposed two different implementations of a multidimensional approach toward Ethereum blockspace and the corresponding gas fee markets, or what he referred to as multidimensional EIP-1559. Specifically, multidimensional EIP-1559 aims to account for differences in demand between the EVM, block data, witness data and state writing. The present approach whereby each facet is combined into a single resource, gas, is impotent at handling differences in demand between these resources. This ineffectiveness is caused by the necessity of calculating gas costs based on the worst-case usage to average-case usage ratio for any particular resource, which may be misaligned with what clients can actually handle. In his blog post, Buterin outlined two options for a multidimensional approach to Ethereum gas fee markets:

Option 1 of the multidimensional EIP-1559 approach retains much of the current structure outlined in EIP-1559. This includes retaining gas limits, priority fees, and fixed costs of execution. However, there is a key difference in the way gas prices are calculated for individual resources such as calldata or storage use. Instead of being based solely on the total base fee, the gas price for each resource is calculated based on the ratio between the base fee for one unit of that resource and the total base fee. While this approach allows for a multidimensional approach to gas fees, it still retains the current limits that blocks have, making it a “less pure” approach according to Buterin.

In contrast, the second option takes a “more pure” approach by making more sweeping changes to the gas fee structure. The base fee for each resource is set at a low price of 1 wei per unit, and gas limits are removed for blocks. Burst limits and sustained targets are used instead, with the goal of ensuring that a block never surpasses the burst limit for any particular resource, while aiming for an average long-term consumption equivalent to the sustained target. Burst limits refer to the maximum amount of gas that can be used for a given resource in a single block, while sustained targets refer to the average amount of gas that can be used for that resource over a longer period of time. Additionally, the priority fee is specified as a percentage of the base fee, which can be adjusted to incentivize miners to include transactions with higher priority fees. This approach allows for far higher limits for edge cases, making it possible to include blocks that would otherwise have exceeded the limit and potentially caused priority fees to rise precipitously.

Prior proposals for a multidimensional fee market have imposed optimization problems on block builders, due to the greater difficulty of calculating gas fees. This would lead to centralization risk as properly optimised block builders take on the majority of the burden. However, block builder centralisation has already been encountered due to MEV and solutions such as Proposer Builder Separation (PBS) may remedy this issue. Furthermore, the ability to implement far higher limits for edge cases in multidimensional EIP-1559 allows for the inclusion of blocks that otherwise would have exceeded the limit and potentially caused priority fees to rise precipitously. 

EIP-3198: BASEFEE Opcode

Implemented in EIP-1559 was the new gas fee mechanism which included a base fee. The base fee was an important parameter in Ethereum as it determined the minimum fee required for a transaction to be included in a block. It was important that EVM users such as smart contract-based applications could access the base fee and factor it into their transactions. Therefore, EIP-3198 was introduced as a part of the London Hard Fork, aiming to provide access to the base fee of a block for smart contracts.

The proposal sought to add a new opcode, BASEFEE, that, when accessed, returned the current base fee of the block in which it was executed. This allowed contracts to get the value of the base fee and use it in various use cases, such as setting bounties for anyone to “poke” them with a transaction, implementing gas futures, and improving the security for state channels, plasma, optirolls, and other fraud-proof driven solutions. The opcode was added at position 0x48 with a gas cost of G_base. The value of the base fee was already available before running the EVM code, so the opcode did not add extra complexity or additional read/write operations. One of the main benefits of EIP-3198 was that it could help to reduce the cost of running smart contracts by providing more accurate information about the minimum required fees for transactions. This could help to improve the efficiency of the network and reduce the number of failed transactions due to insufficient fees. The value of the base fee was publicly accessible in the block header; there were no concerns about exposing sensitive information.

EIP-3529: Reduction in Refunds

Gas refunds are a feature of Ethereum that allows users to receive a refund of unused gas after the execution of a transaction or contract. This feature was introduced to prevent spamming of the network by incentivizing users to write more efficient code and only use the gas they need. However, gas refunds for certain contracts have caused harmful consequences. For example, usage of the GasToken, a smart contract that allows users to tokenize gas, has risen, exacerbating state size and inefficiently clogging blockchain gas usage. Additionally, refunds may increase block size variance. Therefore, EIP-3529 was introduced as a part of the London Hard Fork to mitigate these harmful effects by reducing gas refunds. 

Specifically, the proposal removes gas refunds for the SELFDESTRUCT contract and reduces them for the SSTORE contract. Removing refunds from the code will not affect its ability to run, but it may make certain applications no longer economically viable. However, keeping some refunds intact is important to maintain the gas cost treatment for specific use cases such as anti-reentrancy locks and ERC-20 approve-and-send. In fact, completely removing refunds could discourage users from clearing storage slots, leading to storage bloat. Therefore, it is crucial to carefully consider the impact of refund removal and strike a balance between gas cost optimization and preserving important use cases.

EIP-3541: Reject New Contract Code Starting With the 0xEF Byte

EIP-3541 is a proposal that improved the validation of smart contracts conforming to the EOF at deployment time. This proposal was designed to ensure that the state of every EOF-formatted contract is valid. To achieve this, contracts conforming to the EVM Object Format will be validated at deployment time. The proposal specified a byte sequence that doesn’t exist in any of the already deployed contracts to prevent already deployed contracts from being recognized as EOF. The proposal recommends disallowing the starting byte of the format to limit the analysis to the contracts existing before this fork and prevent the growth of the search space (the range of possible solutions that need to be explored to look up an address).

Starting from a certain block number, new code cannot be deployed if it starts with the 0xEF byte. The 0xEF byte was chosen because it resembles Executable Format, and analysis showed that there are no existing contracts starting with this byte; beyond these reasons, 0xEF was a ‘magic number’ choice by the authors of the EIP. This is to ensure that contracts conforming to the EOF are validated at deployment time and to prevent already deployed contracts from being recognized as such format. The initcode (bytecode that initialises a smart contract) is the code executed in the context of the CREATE, or CREATE2 instructions, used to create a new contract at a new address and the opcode (specifying a specific operation to be performed by the EVM)  0xEF is currently an undefined instruction, causing an exceptional abort when executed. Existing code in the account trie (a data structure used to store accounts) starting with the 0xEF byte is not affected semantically by this change. 

EIP- 3554: Difficulty Bomb Delay to December 2021

Ethereum’s difficulty bomb was a feature of the network that incentivized miners to move away from energy-intensive proof-of-work mining and towards proof-of-stake by exponentially increasing the time it took to mine a new block. This made it difficult for miners to continue using proof-of-work and led to a more sustainable and energy-efficient mining process. Simultaneously, the difficulty bomb discouraged blockchain forks, centralisation of currency creation and ownership, and forced node upgrades.

To ensure the difficulty bomb did not take effect before the Merge, EIP-3554 was launched during the London Hard Fork to delay the difficulty bomb until the first week of December 2021. This was planned with the goal of having the Merge occur before December 2021, at which point the bomb could be readjusted or removed. To achieve this, the client used a fake block number for calculating mining difficulty, suggesting that the bomb was adjusting 9,700,000 blocks later than the actual block number. By delaying the difficulty bomb, it allowed for more time to prepare for the necessary upgrades before the effects of the bomb became too severe. By using a fake block number, Ethereum continued to function smoothly while ensuring that the effects of the bomb were not ignored.

Practical Effect Of The London Hard Fork

Being one of the most notable forks in the history of Ethereum, the London Hard Fork was big news upon its announcement and implementation, sparking a variety of reactions from the Ethereum community. 

Primarily, the London Hard Fork was received positively by transactors on the Ethereum network due to its effects on the gas fee market. Particularly during the latter and former halves of 2020 and 2021 respectively Ethereum gas fees rose precipitously in response to network congestion. The hard per block limit resulted in excessive wait times and gas price bidding causing a slow and expensive transacting experience. As a result of the London Hard Fork, particularly EIP-1559, Ethereum users are provided with a more stable environment for their transactions to take place. While average gas fees were not greatly reduced, the faster and less volatile transacting experience which resulted from the upgrade has had a positive impact on network usability. However, the reductions in block rewards given to miners/validators disincentivize users from participating in these vital network services. 

The deflation caused by burning the base fee is beneficial for the network. Burning the base fee provides a mechanism for the long-term sustainability of the network, ensuring that the supply of Ethereum will continue to decrease over time and introducing deflationary pressure. This deflationary pressure can incentivize holders to hold onto their Ethereum, which can support the long-term stability and growth of the network. 

Furthermore, the inclusion of the BASEFEE opcode, the reduction in gas refunds and the changes in validation for EOF smart contracts made by the London Hard Fork have had a positive impact on certain smart contracts. These changes to the way that certain types of contracts are processed could lead to lower gas fees and faster transaction times for these types of contracts. This will be particularly beneficial for decentralised finance (DeFi) applications that rely heavily on complex smart contracts. 

Conclusion

Being one of the most significant forks in the history of the Ethereum network, the London Hard Fork transformed the gas fee markets as well as several other aspects of the blockchain. This came primarily as a result of EIP-1559 which changed the fee mechanism from per-unit price bidding to a base fee and tip structure. Additionally, adding opcodes to manage basefee access, reducing gas refunds for certain smart contracts, improving the validation of EOF smart contracts and delaying the difficulty bomb, all ensured the Ethereum network remained up-to-date and functional. Together, these upgrades facilitated a cheaper, optimised and more streamlined transacting experience on the Ethereum network, solidifying its status as the leading smart contract platform and ensuring its prominence for the foreseeable future. 

About Zerocap

Zerocap provides digital asset investment and digital asset custodial services to forward-thinking investors and institutions globally. For frictionless access to digital assets with industry-leading security, contact our team at [email protected] or visit our website www.zerocap.com

DISCLAIMER

Zerocap Pty Ltd carries out regulated and unregulated activities.

Spot crypto-asset services and products offered by Zerocap are not regulated by ASIC. Zerocap Pty Ltd is registered with AUSTRAC as a DCE (digital currency exchange) service provider (DCE100635539-001).

Regulated services and products include structured products (derivatives) and funds (managed investment schemes) are available to Wholesale Clients only as per Sections 761GA and 708(10) of the Corporations Act 2001 (Cth) (Sophisticated/Wholesale Client). To serve these products, Zerocap Pty Ltd is a Corporate Authorised Representative (CAR: 001289130) of AFSL 340799

All material in this website is intended for illustrative purposes and general information only. It does not constitute financial advice nor does it take into account your investment objectives, financial situation or particular needs. You should consider the information in light of your objectives, financial situation and needs before making any decision about whether to acquire or dispose of any digital asset. Investments in digital assets can be risky and you may lose your investment. Past performance is no indication of future performance.

FAQs

What is the London Hard Fork and how does it impact the Ethereum network?

The London Hard Fork was a significant upgrade to the Ethereum network that introduced several changes aimed at improving the network’s security, efficiency, and overall user experience. The primary objective of the London Hard Fork was to update Ethereum’s transaction fee mechanism to make gas fees less volatile and transactions more efficient. It also included other upgrades to reduce gas costs, encourage regular network upgrades, and improve smart contract storage and execution.

What is EIP-1559 and how does it change the Ethereum network?

EIP-1559 is a cornerstone of the London Hard Fork and introduces a significant change to the Ethereum network. It was designed to change the way transaction fees are calculated on Ethereum to reduce gas fee volatility and overall gas prices. EIP-1559 introduced a new gas fee structure that included a base fee and a tip, referred to as a priority fee. The base fee was set by the protocol based on the current network demand, and the priority fee was an additional fee offered by the sender to incentivize miners to include their transactions in the next block.

What are the problems with Ethereum gas fees and how does EIP-1559 address them?

Prior to the implementation of EIP-1559, Ethereum’s gas fees worked via a simple auction mechanism where miners would prioritize transactions paying the highest gas price. This system led to major volatility in gas fees and transaction wait times. EIP-1559 addresses these issues by introducing a new transaction fee mechanism that reduces the volatility of gas fees and provides greater predictability for users, making it easier and more cost-effective to use Ethereum.

What is the purpose of EIP-3198 in the London Hard Fork?

EIP-3198 was introduced as part of the London Hard Fork to provide access to the base fee of a block for smart contracts. This allows contracts to get the value of the base fee and use it in various use cases, such as setting bounties for anyone to “poke” them with a transaction, implementing gas futures, and improving the security for state channels, plasma, optirolls, and other fraud-proof driven solutions.

What is the impact of the London Hard Fork on the Ethereum community?

The London Hard Fork was generally received positively by the Ethereum community due to its effects on the gas fee market. The fork resulted in a more stable environment for transactions, reducing wait times and making the network more user-friendly. However, the reductions in block rewards given to miners disincentivized users from participating in these vital network services. The deflation caused by burning the base fee was beneficial for the network, ensuring that the supply of Ethereum will continue to decrease over time and introducing deflationary pressure.

Like this article? Share
Latest Insights

24 May, 23

Hong Kong Bitcoin ETFs Likely Coming Soon

Hong Kong Bitcoin ETFs are close to becoming reality, as Hong Kong stands on the brink of approving its first spot Bitcoin ETFs, the global

24 May, 23

Bitcoin Halving Prices: A Timeline

Bitcoin halving events are significant milestones in the cryptocurrency’s history, as they directly impact the rate at which new bitcoins are created and, consequently, the

24 May, 23

What are the main Australian Digital Currency Laws?

Australia has emerged as a progressive nation in terms of digital currency regulation. The country’s approach aims to balance innovation in the fintech sector with

Receive Our Insights

Subscribe to receive our publications in newsletter format — the best way to stay informed about crypto asset market trends and topics.

Want to see how bitcoin and other digital assets fit into your portfolio?

Contact Us
Ready to sign up?
Create an Account