Share this article

Ethereum's Constantinople Upgrade Faces Delay Due to Security Vulnerability

Ethereum's major Constantinople upgrade was delayed after blockchain audit firm ChainSecurity discovered a security issue with one of the changes.

Ethereum, coin, keyboard

Ethereum’s long-anticipated Constantinople upgrade has just been delayed after a critical vulnerability was discovered in one of the planned changes.

Smart contract audit firm ChainSecurity flagged Tuesday that Ethereum Improvement Proposal (EIP) 1283, if implemented, could provide attackers a loophole in the code to steal user funds. Speaking on a call, ethereum developers, as well as developers of clients and other projects running the network, agreed to delay the hard fork – at least temporarily – while they assessed the issue.

Story continues
Don't miss another story.Subscribe to the Crypto Long & Short Newsletter today. See all newsletters

Participants included ethereum creator Vitalik Buterin, developers Hudson Jameson, Nick Johnson and Evan Van Ness, and Parity release manager Afri Schoedon, among others. A new fork date will be decided during another ethereum dev call on Friday.

Discussing the vulnerability online, the project's core developers reached the conclusion that it would take too long to fix the bug prior to the hard fork, which was expected to execute at around 04:00 UTC on Jan. 17.

Called a reentrancy attack, the vulnerability essentially allows an attacker to "reenter" the same function multiple times without updating the user about the state of affairs. Under this scenario, an attacker could essentially be “withdrawing funds forever,” said Joanes Espanol, CTO of blockchain analytics firm Amberdata in a previous interview with CoinDesk.

He explained:

"Imagine that my contract has a function which makes a call to another contract… If I’m a hacker and I’m able to trigger function a while the previous function was still executing, I might be able to withdraw funds."

This is similar

to one of the vulnerabilities found in the now-infamous DAO attack of 2016.

ChainSecurity's post explained that prior to Constantinople, storage operations on the network would cost 5,000 gas, exceeding the 2,300 gas usually sent when calling a contract using "transfer" or "send" functions.

However, if the upgrade was implemented, "dirty" storage operations would cost 200 gas. An "attacker contract can use the 2300 gas stipend to manipulate the vulnerable contract’s variable successfully."

Constantinople was previously expected to activate last year, but was delayed after issues were found while launching the upgrades on the Ropsten testnet.

Ethereum image via Shutterstock

Christine Kim

Christine is a research analyst for CoinDesk. She focusses on producing data-driven insights about the cryptocurrency and blockchain industry. Prior to her role as a research analyst, Christine was a tech reporter for CoinDesk mainly covering developments on the ethereum blockchain.

Cryptocurrency holdings: None.

Christine Kim
Nikhilesh De

Nikhilesh De is CoinDesk's managing editor for global policy and regulation, covering regulators, lawmakers and institutions. When he's not reporting on digital assets and policy, he can be found admiring Amtrak or building LEGO trains. He owns < $50 in BTC and < $20 in ETH. He was named the Association of Cryptocurrency Journalists and Researchers' Journalist of the Year in 2020.

Nikhilesh De