Skip to content

Wallets — overview

A Sigil wallet is an account a user signs with. Sigil ships three kinds, and a single end user can hold all three at once. Choosing between them is mostly a question of who holds the keys and who pays the gas.

EOA — client signing

Keys are generated and reconstructed inside the user’s browser (Sigil iframe). Sigil never sees a plaintext key. The user pays gas from their own balance.

EOA — TEE signing

Keys are generated and reconstructed inside a hardware-attested Trusted Execution Environment (Google Confidential Space, AMD SEV-SNP). Same address shape as a client EOA, but signing happens server-side. Unlocks agent / backend signing without a browser.

Smart account (ERC-4337)

Opt-in, per chain. Sits on top of either kind of EOA. Sigil sponsors the gas via Pimlico, capped at €10 / wallet / month. Batched calls, gasless sends, deterministic CREATE2 address identical across EVM chains.

How they stack

EOAs and smart accounts are not alternatives — a smart account requires an EOA underneath it (the owner). The wallet kind picks which authority signs the UserOp; the smart account is a thin contract that executes whatever that authority approves.

┌───────────────────────────────────┐
│ Smart account (LightAccount v2) │ ← per-chain, opt-in
│ 0xSA... │
└────────────────┬──────────────────┘
│ owns
┌───────────────────────────────────┐
│ EOA wallet (single per curve) │
│ 0xEOA... or solana base58, etc. │
└───────────────────────────────────┘
│ signs from
┌──────────────────┴──────────────────┐
▼ ▼
┌──────────────────────┐ ┌──────────────────────┐
│ Browser iframe (SSS) │ OR │ Confidential Space │
│ client mode │ │ TEE — tee mode │
└──────────────────────┘ └──────────────────────┘

A user’s primary wallet is always an EOA. Whether the EOA’s key is held client-side or TEE-side is a one-time choice per wallet (see signing_mode in the API). On top of that EOA, the user — or your backend — can optionally provision a smart account per EVM chain.

Choosing

Use the matrix below as a starting point. Mixed setups are common — nothing prevents a single product from offering client EOAs to retail users and TEE EOAs to institutional ones.

Client EOATEE EOASmart account
Who holds the keyUser (browser SSS)TEE-attested workloadInherits owner
Sigil can sign without userNoYesYes (via owner)
Backend / agent signingNoYesYes
Gas paid byUserUserSigil (€10/mo cap)
Batched ops in one txNoNoYes
Address on every EVM chainSameSameSame (CREATE2 deterministic)
Recovery flowEmail OTPNot neededInherits owner
Best forRetail self-custodyInstitutional, agentsUX-first apps, gasless onboarding

Where to go next