EIP-6780

Official Website:
Social Profiles:

We've just announced IQ AI.

Check it out

EIP-6780

EIP-6780 is an restricting the functionality of the SELFDESTRUT opcode, which previously allowed contracts to self-destruct and wipe their code and storage. Now, it only functions for contracts created within the same transaction. This ensures a cleaner, more manageable state, enhancing long-term stability and security while still allowing for legitimate use of the function. [2][3]

Overview

EIP-6780 - "SELFDESTRUCT only in same transaction" modifies the functionality of the SELFDESTRUCT opcode in preparation for the Verkle Tree architecture to be used in future applications. The SELFDESTRUCT opcode is a powerful tool that lets delete themselves, sending the remaining funds to a designated address. It’s akin to streamlining Ethereum’s internal housekeeping practices for a smoother-running network.[1]

Currently, Ethereum applications use the architecture, and the SELFDESTRUCT opcode can be used to make significant changes to account states, such as deleting code and storage. However, when the Verkle Tree architecture is used in future Ethereum applications, it will not be easy to modify or delete accounts because Verkle Tree architecture stores each account in a different account key that is not connected to the root account.
Therefore, EIP-6780 proposes a modification to the functionality of the SELFDESTRUCT opcode. According to EIP-6780, the modified SELFDESTRUCT opcode will no longer have the ability to change or delete accounts when used, and will only be used to transfer ETH to the caller, except in the case where SELFDESTRUCT is called in the same transaction created by a .

Contracts exist on that currently use SELFDESTRUCT to limit who can initiate a transaction with a contract. By destroying the contract in the same transaction so nobody has a chance to call it.[5]

While EIP-6780 doesn't directly simplify the specification, it significantly improves implementations by:

  • Limiting storage edits per block: This facilitates the implementation of Verkle trees and eases client development.
  • Guaranteeing code persistence: This strengthens transaction verification in account abstraction wallets, preventing DoS vulnerabilities.
  • These new invariants pave the way for further simplification, potentially leading to the complete removal of SELFDESTRUCT in the future.[3]

Authors

See something wrong?

Average Rating

Based on over 2 ratings

How was your experience?

Give this wiki a quick rating to let us know!

Edited By

Profile picture of Anonymous uservzbrv

Edited On

April 14, 2024

REFERENCES

[1]

Ethereum Investment Proposals - EIP-6780: SELFDESTRUCT only in same transaction

Apr 6, 2024

[2]

CCN - EIP-6780 (Restrict SELFDESTRUCT)

Apr 6, 2024

[3]

LinkedIn - Ethereum's "Purge": Simplifying the Protocol for a Stronger Future

Apr 6, 2024

[4]

Medium - EIP-6780 “SELFDESTRUCT only in same transaction”

Apr 6, 2024

[5]

ethereum-magicians.org - EIP-6780

Apr 6, 2024