Overview of EIP-7702
mainEIP-7702 introduces a new transaction type that allows an Externally Owned Account (EOA) to designate a Smart Contract as its "implementation". This is achieved through an "authorization list" property within the transaction, which contains a set of (chain_id, contract_address, nonce, y_parity, r, s) tuples. These tuples define which contracts are delegated to the EOA.
Key use cases for EIP-7702 include:
- Batching: Executing multiple operations (e.g., an ERC-20 approval followed by a spend) in a single atomic transaction.
- Sponsorship: Allowing one account to pay for transactions on behalf of another account.
- Privilege de-escalation: Enabling users to sign sub-keys with restricted permissions (e.g., permission to spend specific tokens but not ETH, or limiting spending to a certain percentage of the balance).