According to a recent Ethereum blog post, The Ethereum network will be undergoing a scheduled upgrade at block number 7,280,000, which is predicted to occur on Thursday, February 28, 2019. The exact date is subject to change depending on block times between now and then and could be activated 1-2 days before or after.
The practice of forks sparks much debate in the industry and many are monitoring these imminent hard forks with great anticipation, trepidation, and uncertainty.
But what are the implications of Constantinople and St.Petersburg on the broader blockchain industry and perhaps more importantly, what do they reveal about the current state of Ethereum’s infrastructure? Blockchain experts across cybersecurity, crypto markets, and technical development weigh-in.
Benjamin Scherrey, Group Chief Technological Officer & Chief Systems Architect of HotNow, the first gamified online-to offline economy for users to derive real-world value from a virtual world:
“Forks in crypto ledgers are part of the natural evolution of this technology. It’s not unlike how new DNA is created when chromosomes split and pair up again. They’re major events but generally more evolutionary than revolutionary. They are, however, absolutely essential for crypto ledgers to ultimately demonstrate their revolutionary impact.
The upcoming Ethereum forks are positive moves that both shore up the value of the crypto ledger while also demonstrating existential challenges facing the platform as a whole. The big news is Ethereum splitting away from a “proof of work” model, shared by its big brother Bitcoin, and moving towards a promising and more scalable consensus protocol called “proof of stake”.
The consensus protocol is the most fundamental and intrinsic aspect of any crypto ledger. Moving from the purposefully computationally expensive proof of work model, also somewhat unaffectionately known as “proof of waste” due to its high energy costs, to a model that more directly aligns rewards for mining with actual “skin in the game” proposes to make Ethereum more fair and transparent.”
“The upcoming Ethereum upgrade is an exciting milestone in the largest and most evolved blockchain technology and community. While I don’t expect a major price reaction, its delivery will send an important and encouraging signal to the thousands of developers building on Ethereum, and the hundreds of enterprises like Levi Strauss, JP Morgan, and the UN World Food Program. Massive change arrives in miniature steps, and Constantinople is simply the latest successful step in the journey to a better Internet.”
“The entire Ethereum ecosystem is looking on, with bated breath, as we draw nearer to Ethereum’s Constantinople hard fork. It’s important to reflect, for a moment, on the significance of this development. After all, a public, functioning blockchain, managing billions in value, is not easy to upgrade. Implementing fundamental protocol upgrades such as this always involves some risk of service disruption and community fragmentation.
The complex network upgrade, exasperated by the decentralized nature of blockchain systems, will change the underlying Ethereum protocol by creating new rules to improve the system.
“Constantinople signals the first real step in moving away from Proof of Work (PoW), which is at the core of many of Ethereum’s scalability and efficiency issues, and towards a Proof of Stake (PoS) consensus protocol which would make the network faster and transactions cheaper. That’s a longer term goal, however, and for now the objective is to simply to increase network capacity and decrease mining energy consumption. If the upgrade is rolled out without any hiccups, it’s fair to say that Constantinople will represent a significant step towards scalability gain that can help in bringing the community’s collective aspiration of real-time on chain transactions closer to fruition,” stated Vaibhav Kadikar, Founder & CEO, CloseCross.
“Despite any potential disruption or other issues, Ethereum still maintains a significant advantage in terms of developer commitment to the platform. We, as part of the Ethereum ecosystem, are looking to understand, through this and subsequent forks, the impact these forks will have on our existing work and code following the upgrade, and what effect this might have on network usage and costs.”
Elias Haase, Co-Founder & Community Manager at B9lab, the world’s leading provider of blockchain education and training, said:
“The Constantinople and Petersberg forks have been anticipated for nearly six months. Upgrades to live systems always contain risk, so it’s appropriate that the team is approaching the upgrades with an abundance of caution. Everyone involved knows it’s important to not do anything that will disturb applications already running on the platform. If we see a successful execution, it will demonstrate their ability to assess and mitigate the risks while advancing the technology.”
If you use an exchange (such as Coinbase, Kraken, or Binance), a web wallet service (such as Metamask, MyCrypto, or MyEtherWallet), a mobile wallet service (such as Coinbase Wallet, Status.im, or Trust Wallet), or a hardware wallet (such as Ledger, Trezor, or KeepKey) you do not need to do anything unless you are informed to take additional steps by your exchange or wallet service.
But node operators and miners will need to download the latest version of their Ethereum client.
What changes are going into Constantinople?
Changes that are implemented in Constantinople are defined using EIPs. Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards. The following EIPs will be implemented in Constantinople.
EIP 145: Bitwise shifting instructions in EVM
Provides native bitwise shifting with cost on par with other arithmetic operations.
EVM is lacking bitwise shifting operators, but supports other logical and arithmetic operators. Shift operations can be implemented via arithmetic operators, but that has a higher cost and requires more processing time. Implementing SHL and SHR using arithmetics cost each 35 gas, while these proposed instructions take 3 gas.
In short: This EIP adds native functionality to protocol so that it is cheaper & easier to do certain things on chain.
EIP 1014: Skinny CREATE2
Adds a new opcode at 0xf5, which takes 4 stack arguments: endowment, memory_start, memory_length, salt. Behaves identically to CREATE, except using keccak256( 0xff ++ sender_address ++ salt ++ keccak256(init_code)))[12:] instead of keccak256(RLP(sender_address, nonce))[12:] as the address where the contract is initialized at.
This allows interactions to be made with addresses that do not exist yet on-chain but can be relied on to only possibly contain code eventually that has been created by a particular piece of init code.
Important for state-channel use cases that involve counterfactual interactions with contracts.
In short: This EIP makes it so you can interact with addresses that have yet to be created.
EIP 1052: EXTCODEHASH opcode
This EIP specifies a new opcode, which returns the keccak256 hash of a contract’s code.
Many contracts need to perform checks on a contract’s bytecode, but do not necessarily need the bytecode itself. For instance, a contract may want to check if another contract’s bytecode is one of a set of permitted implementations, or it may perform analyses on code and whitelist any contract with matching bytecode if the analysis passes.
Contracts can presently do this using the EXTCODECOPY opcode, but this is expensive, especially for large contracts, in cases where only the hash is required. As a result, a new opcode is being implemented called EXTCODEHASH which returns the keccak256 hash of a contract’s bytecode.
In short: This EIP makes it cheaper (less gas is needed) to do certain things on chain.
EIP 1234: Constantinople Difficulty Bomb Delay and Block Reward Adjustment
The average block times are increasing due to the difficulty bomb (also known as the “ice age”) slowly accelerating. This EIP proposes to delay the difficulty bomb for approximately 12 months and to reduce the block rewards to adjust for the ice age delay.
In short: This EIP make sure we don’t freeze the blockchain before proof of stake is ready & implemented.
What changes are going into St. Petersburg?
Before Ethereum performs network upgrades on the main network, test networks, such as Ropsten, are upgraded to test the changes. The original Constantinople changes, listed in this blog post, were applied to test networks before the postponement and require a 2nd network upgrade to reverse the original Constantinople changes. This is called St. Petersburg and it occurs on the same block number as Constantinople.
The following EIP was removed from test networks using the St. Petersburg network upgrade:
REMOVING EIP 1283: Net gas metering for SSTORE without dirty maps