Ethereum’s Istanbul Hard Fork: What Will Change?
Here are the changes scheduled for Ethereum's upcoming fork.
The long-awaited Ethereum Istanbul hard fork is scheduled for Saturday (EST). While considered as part of the move to proof-of-stake, the upgrade focuses primarily on improving sidechain support — specifically with Zcash-based technology.
The upgrade is the third and final in Ethereum’s Metropolis era, the last before the introduction of Casper proof-of-stake. Previous updates, Byzantium and Constantinople, are historic names for the city of Istanbul.
A total of six Ethereum Improvement Proposals will be added out of 30 initial candidates. While no single proposal is particularly comprehensive, the cumulative upgrades should expand the possibilities for smart contract developers to introduce large-scale features to the Ethereum chain, such as privacy protocols and side-chain scaling.
Zcash Tech to Power Ethereum Privacy and Scalability
Zero-knowledge cryptographic technology has long been identified as a future addition to the Ethereum protocol, allowing for more private ERC-based tokens and improved scalability through off-chain solutions.
EIP-1108 specifically optimizes routines for elliptic curve arithmetic — the core of most cryptographic encryption algorithms. The proposal changes the computational pricing of elliptic curve algorithms, following earlier optimizations in their de-facto resource usage. Gas costs for some computations saw as much as a six-fold decrease. This is because gas prices for all computing operations are set manually by the developers — only partially reflecting their true cost.
Ethereum developers identified these changes as crucial for a number of projects building on the platform: AZTEC protocol and ZEther are working to implement zero-knowledge proofs and Confidential Transactions for creating private transactions on the Ethereum chain; Matter Labs and Rollup utilize this cryptography to build side-chain scaling solutions.
The team used the AZTEC protocol as an example of the effective reduction offered by the proposal:
“It currently costs 820,000 gas to validate the cryptography in a typical AZTEC confidential transaction. If the gas schedule for the precompiles correctly reflected their load on the Ethereum network, this cost would be 197,000 gas [about $0.23 at current average gas prices].”
Another proposal, EIP-152, is set to allow for direct integrations with the Zcash privacy coin. The upgrade introduces advanced versions of the Blake2b hash functions, which are significantly less intensive than the current implementation. This feature will facilitate interoperability with Zcash and other Equihash-based coins. Its main use case is to enable trustless atomic swaps between the Ethereum and Zcash chains, providing a way to tap into the privacy coin without relying on centralized exchange operators.
A more general optimization set to benefit zero knowledge-based systems is EIP-2028, which reduces the gas cost of Calldata — a data storage instruction. This will allow for increases to bandwidth of data transmission on-chain (with an acceptable cost of network performance). Prioritizing data storage over raw computation paves the way for off-chain solutions, which take over some of the calculation burden at the price of increased data transfer.
Better Sidechain Support and Other Optimizations
Other improvements include more general security and resource usage optimizations. EIP-1344 introduces a new operation that returns the ID of the current chain. This measure was implemented to maintain the security of the network in the event of contentious blockchain splits. It is especially relevant for layer two solutions such as Plasma, which offload some of the transactions outside of the main chain and only update the changes at specified checkpoints.
During a contentious hard fork, such as the one that created Ethereum Classic, the smart contracts may incorrectly pass the data to the wrong chain — an event that could result in loss of funds.
EIP-2200 improves the structure of gas metering for data storage with smart contracts. It introduces several optimizations for batched smart contract calls, as well as organizing previous EIPs on these features.
Finally, EIP-1884 is a general repricing of several functions to bring them in line with their actual resource consumption.
Despite being seemingly minor changes, these last EIPs break backward compatibility — thus the need for a hard fork. It should be noted that Istanbul is not a contentious fork, and all nodes and miners are expected to comply with the changes. There will be no new Ether in exchanges.