πŸ”‘ Authentication

ERC-4337 accounts can use any arbitrary authentication logic. Here are some options and resources.

Traditional Signers

ERC-4337 accounts can use any authentication logic they want in the signature field of a user operation. However, most of the time a traditional scheme is used.

Authentication on blockchains is traditionally done with private keys. In the Ethereum ecosystem, EIP-1193 signers are used as the common interface. EIP-1193 signers can be injected with a browser wallet (like MetaMask) or with an embedded wallet plugin.

ToolKey Management MethodAuthentication MethodsPlug-n-play front end?
PrivyMPCSocial, deviceYes
DynamicMPCSocial, deviceYes
Web3AuthMPC, key shardingSocial, device, passwordYes
Particle NetworkMPC, threshold signature schemeEmail, Social, SMSYes
Ethers, viem, web3Private keyNone, often used with MetaMaskNo
Magic.linkAWS KMSEmail, Social, SMSYes
Lit ProtocolMPC, threshold secret sharingCustom, provides private-key-pair and Lit Actions frameworkNo
FireblocksCustodialCustomNo
TurnkeyCustodialCustomNo

Passkeys & WebAuthn

WebAuthn is a popular authentication framework that leverages authenticators built directly into devices like computers and phones. There are a number of projects developing Passkeys that use WebAuthn for ERC-4337 smart accounts.

Session Keys

Session keys can also be used. Typically this requires writing custom code for your smart account or using a smart account library that includes it natively.

Experimental Methods

ERC-4337 allows more than a single private key to validate user operations for an account. This allows you to mix methods for secrets and set security levels for each type of key. We have written about using oAuth and device keys in our blog.