Intermediate level
A smart account is a wallet whose rules live in a contract instead of being fixed by one private key. That lets it batch several actions into one signature, let someone else pay the gas or accept USDC for it, sign with a passkey on your phone, and recover access through guardians. ERC-4337 does this with separate contract wallets. EIP-7702, live since May 2025, lets an ordinary address borrow contract code without changing address, which also creates a new thing phishers ask you to sign.
Two kinds of account
An ordinary Ethereum address is an externally owned account, or EOA. One private key controls it and the protocol fixes its rules: that key signs every transaction, the account pays its own gas in the chain’s native token, and each transaction makes one call. It is simple, and if the key is lost, so is the account.
A smart account is a contract that holds your assets and decides for itself what counts as a valid instruction. The contract can accept a passkey instead of a seed phrase, require two signers above a limit, let an app pay the gas, or bundle five actions into one. That flexibility is what people mean by account abstraction.
| Property | Ordinary account (EOA) | Smart account |
|---|---|---|
| Controlled by | One private key, from your seed phrase | Whatever its code allows: keys, passkeys, several signers |
| Pays gas | Itself, in the native token | Itself, a sponsor, or in another token through a paymaster |
| Actions per signature | One call per transaction | Several, batched so they succeed or fail together |
| Recovery | Only through the seed phrase | Can include guardians, backup keys and time delays |
| Same address on every EVM chain | Yes, automatically | Only where deployed the same way |
| Main new risk | Losing or leaking one key | Bugs or malicious code in the account logic |
ERC-4337: smart accounts without changing Ethereum
ERC-4337 went live on Ethereum mainnet on March 1, 2023, as a set of contracts rather than a protocol upgrade. It adds a parallel lane for smart account activity with four moving parts.
You sign a UserOperation
Instead of a transaction, your wallet signs a UserOperation: a description of what your smart account should do, with its own gas limits and signature. It goes to a separate mempool, not the usual one.
A bundler packages it
A bundler collects UserOperations from many users and submits them together in one ordinary transaction. It pays the gas up front and is reimbursed.
The EntryPoint checks, then executes
A single shared contract, the EntryPoint, first asks each account to validate its operation (check the signature, confirm the fee can be paid) and only then runs the actions.
A paymaster may pay
If an app sponsors your gas, or lets you pay in a token such as USDC, a paymaster contract covers the fee and settles with you or the app.
One useful property: a 4337 account’s address can be known before the contract exists, because it is derived from the factory and settings that will deploy it. You can receive funds there first, and the contract is deployed along with your first action.
The tradeoff is that a 4337 account is a new address. Moving to one means moving your assets to it, and your old address, with its history and its seed phrase, stays behind.
EIP-7702: an ordinary address that borrows code
The Pectra upgrade on May 7, 2025 added a second route. EIP-7702 lets an existing EOA point to a smart contract and run that contract’s code as its own. Your address, balances, history and seed phrase all stay the same. The account simply gains smart account abilities such as batching and sponsored gas.
Mechanically, you sign an authorization naming a chain ID, the contract to delegate to and your
account’s nonce. It travels in a new transaction type (type 4), and from then on your address carries a
short marker, the bytes 0xef0100 followed by the contract address, that tells the chain where to find
its code.
- It persists. The delegation stays in place across transactions until you change it.
- It is reversible. A new authorization that delegates to the zero address clears it and returns the account to a plain EOA.
- Your key still rules. The original private key can still sign ordinary transactions and change the delegation. Your seed phrase is exactly as important as before.
In practice you do this through your wallet’s settings, not by hand. MetaMask, for example, calls the result a smart account: you switch it on per network, the account delegates to MetaMask’s own delegator contract, and switching back costs a small network fee. Block explorers show it too. On Etherscan, an address page lists its delegated address, or shows none for a plain account.
The phishing risk that comes with delegation
A delegation hands the contract’s code full control of your account. Whoever wrote that code can move every token and NFT at the address, in any later transaction, until the delegation is removed. The EIP-7702 specification is blunt about it: delegated code "has unrestricted access to the account", applications must not expect to ask users to sign authorizations, and it is the wallet’s duty not to offer an interface for doing so.
Two details make it sharper. An authorization with a chain ID of 0 is valid on every chain, so one signature can hand over the same address everywhere. And the transaction that carries an authorization can be sent and paid for by someone else, so the attacker only needs the signature.
Attackers moved quickly. In research published at the end of May 2025, Wintermute found that over 97% of all EIP-7702 delegations pointed to contracts sharing exactly the same code: automated sweepers attached to wallets whose keys had already been stolen, so that any ETH sent in would be drained at once. Those victims lost their keys in the ordinary ways. The lesson for everyone else is that a delegation is as powerful as a key.
Passkeys and the P-256 precompile
A passkey is the login method your phone and laptop already use for websites: a key pair created inside the device’s secure hardware and unlocked with your face, fingerprint or PIN. There is no seed phrase to write down and nothing to type.
The catch was the curve. Ethereum keys use secp256k1. Passkeys use a different curve, secp256r1, also called P-256. A contract could verify a P-256 signature in ordinary code, but it typically cost a few hundred thousand gas each time. Two precompiles, verification functions built into the chain itself, fixed that:
| Route | Where it applies | Gas to verify one signature |
|---|---|---|
| Ordinary contract code | Any EVM chain | Hundreds of thousands |
| RIP-7212 precompile | Rollups that adopted it, including OP Stack chains since their Fjord upgrade in 2024 | 3,450 |
| EIP-7951 precompile | Ethereum mainnet since the Fusaka upgrade on December 3, 2025 | 6,900 |
Both precompiles live at the same address with the same interface, so the same wallet code works on both. The mainnet version costs more because it was benchmarked again and fixes two edge cases in the rollup version. Either way, verification became tens of times cheaper, which is what made passkey wallets practical.
Base Account, formerly Coinbase Smart Wallet, is a widely used example. Its passkeys are stored and synced by iCloud Keychain, Google Password Manager or a password manager such as 1Password, with a recovery phrase available as a backup. That model moves your security somewhere new. Your Apple or Google account, and every device signed into it, becomes part of your wallet’s security, so protect that account with the care you would give a seed phrase.
What a smart account can do for you
Gas sponsorship and gas in USDC
A paymaster can pay your fee outright, as apps often do to onboard new users, or accept a token you hold instead of ETH. Circle’s Paymaster, for example, accepts USDC for gas on several chains and added support for ordinary accounts through EIP-7702 in May 2025. Paying in a token can carry a fee on top of the gas.
Batching
Approve and swap, or claim and stake, in one signature that succeeds or fails as a whole. Apps request it through a standard wallet method, EIP-5792. When an app approves exactly the amount it spends in the same batch, no standing approval is left behind.
Session keys and spending limits
A temporary key that may only do certain things, such as play one game or spend up to 50 USDC a day, for a limited time. You sign once, and the app acts within those bounds without prompting you each time.
Social recovery
Guardians, such as a second device, a trusted person or a service, can together replace a lost key, usually after a waiting period that gives you time to cancel a hostile attempt.
Session keys and spending limits are the features that change daily use most. They let a game or a trading app act for you without a prompt per click, while capping what a compromised app could do. Read their limits as carefully as an approval: amount, contracts, and expiry.
On Solana the picture is different. The fee payer is simply the first signer of a transaction and need not be the account that owns the tokens, so an app can sponsor your fees natively by signing as the payer, and multisig smart accounts such as Squads provide the policy features. The ideas carry over even though the plumbing does not.
What still breaks
Addresses across chains
An ordinary address exists on every EVM chain at once, because it comes from your key. A contract account exists only where it has been deployed. Send funds to your smart account’s address on a chain where the contract was never deployed, and nobody controls them until someone deploys there.
That happened on June 9, 2022. The Optimism Foundation sent 20 million OP tokens to an address the market maker Wintermute had provided: its Safe multisig address from Ethereum mainnet. The Safe had never been deployed on Optimism. An attacker replayed old deployment transactions that carried no chain ID, recreated a wallet at that exact address on Optimism under their own control, and took the tokens.
Modern smart wallets deploy deterministically, so the same setup lands at the same address on each chain, and a 7702 account keeps your EOA address everywhere. Still, before receiving on a new chain, confirm the account is deployed there, or will deploy under your control, and send a test first. Settings are per chain too: adding or removing a signer on one chain changes nothing on the others unless the wallet syncs it, which some, such as Coinbase’s smart wallet contract, are built to do. The guide to living on more than one chain covers the wider picture.
Recovery that was never set up
Social recovery protects you only if the guardians exist, still have their keys, and know what to do. A recovery method configured once and never tested is a hope, not a plan. Passkey wallets have their own version: if your only passkey was on a phone that is now lost, and it was never synced or backed up, you are relying on whatever backup the wallet offers.
New code, new bugs
A smart account is software, and a bug in the account contract, the delegate contract or an added module is a bug in your wallet. Prefer account code that is widely used and audited, and be wary of installing extra modules from unknown sources. Some older apps and contracts also assume every user is an EOA and cannot verify a signature from a contract account.
Infrastructure you rely on
4337 accounts depend on bundlers, and gasless flows depend on a paymaster being willing to pay. If a sponsor stops, you pay your own gas, so keep a little of the native token on each chain you use.
Using one sensibly
- Know which kind you have. A 4337 contract wallet, a 7702 upgraded EOA or a plain EOA. It changes what your seed phrase does and what happens on a new chain.
- Keep the seed phrase for a 7702 account. Upgrading does not retire it. It still controls everything.
- Set up and test recovery before real money goes in.
- Delegate only through your wallet’s settings, and read every batch before approving it, because one signature now does several things. Reading what you sign applies with extra force.
- Test on each new chain with a small amount before receiving anything large.
- Fit it into your structure. A smart account can serve as a warm wallet or, as a multisig, a vault. See structuring your wallets.
For the machinery underneath, including the EntryPoint, the validation rules and the fine print of 7702 authorizations, continue to account abstraction internals. The beginner guide to wallets covers the basics this builds on.
Common questions
Is a smart account safer than a normal wallet?
It can be, because it can require several signers, cap spending and recover a lost key. It also adds contract code that must be correct and, with EIP-7702, a new kind of request that phishers target. The safety comes from how it is configured and whose code it runs, not from the label.
Does upgrading with EIP-7702 change my address or move my funds?
No. Your address, balances and history stay exactly where they are. The account starts running code from the delegated contract, and your original private key keeps full control, including the power to change or remove the delegation.
How do I undo an EIP-7702 delegation?
Sign a new authorization that delegates to the zero address, which clears it. Wallets that offer smart accounts usually expose this as a switch in account settings, and it costs a small network fee on each chain where the delegation was set. A block explorer will then show no delegated address.
What happens to a passkey wallet if I lose my phone?
If the passkey was synced through iCloud Keychain, Google Password Manager or a password manager, it is available on your other signed in devices. If it lived only on the lost phone, you need the backup the wallet offers, such as a recovery phrase or another registered signer. Set that up before you need it.
Are gasless transactions really free?
For you, sometimes. Someone still pays the network. An app may sponsor your gas as a customer acquisition cost, or a paymaster may take a token such as USDC from you instead of ETH, often with a fee on top. Gasless describes who pays, not whether anyone does.
Where to go next
Next: What your address says about you
Guide 4 of 16 in the Intermediate level. Your place is kept on this device, so you can pick up exactly here next time.