Skip to content

Commit

Permalink
Update EIP-7610: Point to correct EIP-161
Browse files Browse the repository at this point in the history
Merged by EIP-Bot.
  • Loading branch information
jochem-brouwer authored Jul 19, 2024
1 parent 76c1221 commit dc288af
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion EIPS/eip-7610.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ This EIP amends [EIP-684](./eip-684.md) with one extra condition, requiring empt

## Rationale

EIP-684 defines two conditions for contract deployment: the destination address must have zero nonce and zero code length. Unfortunately, this is not sufficient. Before [EIP-158](./eip-158.md) was applied, the nonce of a newly deployed contract remained set to zero. Therefore, it was entirely possible to create a contract with a zero nonce and zero code length but with non-empty storage, if slots were set in the constructor. There exists 28 such contracts on Ethereum mainnet at this time.
EIP-684 defines two conditions for contract deployment: the destination address must have zero nonce and zero code length. Unfortunately, this is not sufficient. Before [EIP-161](./eip-161.md) was applied, the nonce of a newly deployed contract remained set to zero. Therefore, it was entirely possible to create a contract with a zero nonce and zero code length but with non-empty storage, if slots were set in the constructor. There exists 28 such contracts on Ethereum mainnet at this time.

As one of the core tenets of smart contracts is that its code will not change, even if the code is zero length. The contract creation must be rejected in such instanace.

Expand Down

0 comments on commit dc288af

Please sign in to comment.