Over the past couple of weeks, the Ethereum community has been the goal of a sustained assault. The attacker(s) have been very artful in finding vulnerabilities within the consumer implementations in addition to the protocol specification.
Whereas the current patches have led to an total elevated resiliency within the consumer implementations, the assaults have additionally demonstrated {that a} lower-level change to the EVM pricing mannequin is required.
For a lot of customers, probably the most seen consequence might be that they’re having difficulties getting transactions included in blocks, and full nodes are going through reminiscence limitations in managing the bloated state.
That is our technique to handle these points:
- As a short lived measure to attenuate the consequences of the newest assault, we suggest all miners to decrease the gaslimit to 500K fuel.
- A tough-fork based mostly on EIP 150 version 1c shall be put in force at block
2457000[see below]. This may reprice sure operations to correspond higher to the underlying computational complexity. - A second hard-fork will observe shortly after, aimed toward reverting the present “state-bloat” launched by the assaults. This second fork will serve to take away accounts that are empty; missing code, steadiness, storage and nonce == 0.
We’ve applied the modifications required within the purchasers and are at the moment extending and including exams in an effort to forestall the introduction of consensus-breaking vulnerabilities.
And as a reminder, the Ethereum Bug Bounty is open and contains the brand new hardfork-implementations.
EDIT: Fork block has been moved to 2463000 in an effort to accommodate much more testing.