Account Abstraction: o upgrade que vai levar cripto ao mainstream
EIP-4337 em português: smart wallets, sem seed phrase, face ID e passkeys. O futuro é aqui.
Alienhub Team
Web3 Engineering

Você já pediu para alguém guardar uma seed phrase de 12 palavras? Assistiu ao olhar de pânico e a eventual negligência? Seed phrases são o motivo número um pelo qual pessoas cercadas de tecnologia continuam mantendo dinheiro em banco.
Account Abstraction (AA) mata a seed phrase. Não metaforicamente; literalmente a substitui por algo que você já usa: seu celular, face ID, email. Em 2026, isso já é mainstream. A gente explica como.
O problema das EOAs (Externally Owned Accounts)
Ethereum começou com uma ideia simples: carteira = par de chaves privada/pública. Você assina transação com a privada, rede valida com a pública. Clean, matemático, criptograficamente seguro.
Problema: carteiras não têm lógica customizável. Sua carteira não pode:
- Pagar taxa em stablecoin (tem que ser ETH)
- Permitir gastos recorrentes sem assinatura (subscriptions)
- Recuperar fundos se você perder a chave (social recovery)
- Rotacionar chaves sem transferir fundos
- Usar WebAuthn (padrão de browser pra biometria)
Tudo isso porque EOA é apenas "validar e executar a transação assinada". Sem camadas de lógica.
Resultado prático: criptografia é segura; usabilidade é terrível. Pessoas usam exchanges porque precisam de recupearção de senha. Não escolha; necessidade.
Account Abstraction em linguagem humana
AA permite que você substitua a lógica de validação de transação. Em vez de "assinar com privada", você define regras customizadas.
EOA (tradicional):
Transação → Validar assinatura → OK/Fail → Executar ou retornar
Smart Account (AA):
Transação → Smart contract valida regras customizadas → OK/Fail → Executar ou retornar
Essa mudança abre tudo.
Com AA, sua carteira pode ser um smart contract que:
- Rejeita transação suspeita (muito volume, endereço novo)
- Permite gastos sob limite sem assinatura
- Recupera acesso via social recovery (amigos assinam pra restaurar)
- Paga taxa em qualquer token (paymaster)
- Usa biometria em vez de chave privada
Isso não é ficção; em 2026, Coinbase, Argent, Safe, Biconomy já funcionam assim. Milhões de transações por dia.
Smart Wallets vs EOAs: o tradeoff
| Característica | EOA | Smart Account |
|---|---|---|
| Recuperação de conta | Impossível (seed phrase) | Social recovery, email |
| Pagamento de taxa | Só ETH | Qualquer token (paymaster) |
| Gastos recorrentes | Manual cada vez | Session keys (automático) |
| Biometria | Não | Sim (WebAuthn) |
| Custódia | Você guarda a chave | Provedor (MPC, vaults, etc) |
| Custo de criação | 0 (só dar publicamente) | ~0.1-0.5 ETH (deploy inicial) |
| Latência de tx | ~13s | ~13s (AA bundler) |
| Recuperação de chave roubada | Perda total | Depende do scheme |
O trade-off é real: você delega custódia parcial (ou total) em troca de UX humana.
Como funciona na prática: EIP-4337
EIP-4337 é o padrão de Ethereum pra AA (ativado em março 2023).
Arquitetura:
- User Operation (UserOp): "Quero fazer X" — não é transação ainda, é intent assinada de forma customizável
- Bundler: Recolhe N operações, as agrupa em uma mega-transação
- EntryPoint: Contrato que recebe a mega-transação, valida cada UserOp, executa
- Paymaster (opcional): Contrato que paga taxa em seu lugar
Flow simplificado:
1. User cria UserOp (sem precisar assinar com chave privada — pode ser qualquer assinatura)
2. UserOp é enviada para bundler (via mempool public ou relay private)
3. Bundler agrupa N UserOps
4. Bundler envia mega-transação pra EntryPoint
5. EntryPoint itera cada UserOp:
→ Valida assinatura/lógica customizada
→ Executa operação
→ Deduz taxa (de paymaster ou saldo da account)
6. Todas as operações executam em uma transação; atomic ou fail group
Exemplo concreto: você quer pagar conta com saldo em USDC (não ETH). Sem AA: trocar USDC por ETH, esperar, depois pagar. Com AA: paymaster converte taxa em USDC, você nem vê.
Session keys: assinando sem privada
Um padrão dentro de AA que mudou UX completamente.
Session key = chave temporária limitada (valor máx, endereços permitidos, deadline).
User → face ID no celular → Cria session key válida 1 hora
→ App guarda session key em localStorage
→ Usuário clica "comprar" → Assinado automaticamente (sem popup)
→ Transação vai pro bundler
→ Tudo acontece em background
Sem session key, cada ação précisa de assinatura biométrica. Com ela, UX é indistinguível de Web2.
Passkeys + AA: o casal perfeito
WebAuthn (padrão W3C) é biometria e segurança: você se autentica com rosto/dedo no seu dispositivo. A chave privada fica nele; servidor nunca toca.
Combinando:
Signup: usuário faz face ID → Carteira cria smart account → Passkey é stored
Login: face ID → Cria session key → Interage com app
É o que Coinbase Smart Wallet usa. Resultado: 0 seed phrases, 0 gerenciamento manual de chaves, UX igual Stripe.
Social Recovery: redundância sem trust single
Perdi acesso ao celular. Normalmente, dinheiro sumiu. Com AA + social recovery:
3-de-5 amigos "guardiões" assinam uma transação de recuperação
→ Sua conta aponta pra nova chave
→ Fundos tavam sempre seus; apenas mudou validação
Implementado por Safe, Argent. Funciona porque smart account tem lógica de recuperação. EOA nunca teve isso.
Implementação real: TypeScript + Viem + Permissionless.js
Aqui vai um snippet criando smart account abstrato:
import { createSmartAccountClient } from "permissionless";
import { createPublicClient, http } from "viem";
import { sepolia } from "viem/chains";
// Setup
const publicClient = createPublicClient({
chain: sepolia,
transport: http("https://rpc.ankr.com/eth_sepolia"),
});
// Criar smart account client
// (em produção, isso vem de Coinbase/Argent/Safe SDK)
const smartAccountClient = await createSmartAccountClient({
account: {
address: "0x...", // seu smart account
type: "simple", // SimpleAccount (EIP-4337)
},
chain: sepolia,
bundlerTransport: http("https://bundler.url"),
paymaster: {
type: "simple", // Um paymaster que paga taxa
getPaymasterData: async (userOp) => {
// Logica pra assinar paymaster
return paymasterSignature;
},
},
});
// Enviar UserOp
const userOpHash = await smartAccountClient.sendUserOperation({
calls: [
{
to: "0xUSDC",
data: encodeAbiParameters(...),
value: 0n,
},
],
});
const receipt = await smartAccountClient.waitForUserOperationReceipt({
hash: userOpHash,
});
Real? Sim. Viem suporta AA via permissionless.js (wrapper). Alchemy tem sua own stack. Safe tem Relay.
Players em 2026
- Coinbase Smart Wallet: 1M+ usuários, foco na rampa institucional
- Argent: 800k+, forte em EU por regulação MiCA
- Safe: 5M+ addresses, enterprise (multi-sig on-chain)
- Stackup: Infraestrutura de bundler (aberta)
- Alchemy: AA stack completo (bundler, paymaster, monitoramento)
- Pimlico: Bundler robusto, foco técnico
- Privy: Embedded wallets com AA pra B2B
- Biconomy: Relay + paymaster como serviço
"AA foi o upgrade que Ethereum precisava pra ser um sistema operacional real." — Rapariga da indústria que conseguiu deletar sua seed phrase, finalmente.
Quando AA vira mainstream mesmo?
Sinais de 2026:
- Exchanges (Coinbase, Kraken) dão smart wallets por default
- Games on-chain usam AA pra não pedir assinatura cada ação
- DeFi (Aave, Curve) tem botões "pagar taxa em token" (paymaster)
- Reguladores europeus (MiCA) e brasileiros (DREX) suportam AA pra compliance
- Navegadores integram WebAuthn no OS (já fazem isso em 2026)
Mainnet de ETH teve ~18M smart accounts derivados de AA em 2026. Muito comparado a 2024 (~1M). Ainda minoria vs EOAs, mas crescimento exponencial.
O risco: custódia
Ao usar smart wallet centralizada (Coinbase, Argent hosted), você delega chave a terceiro. Risco:
- Hack no provider
- Regulatory action congela account
- Downtime do provider
Mitigação: self-custodial AA (você gerencia chaves, apenas usa lógica smart contract). Safe é exemplo. Mais complexo, mas possível.
Coinbase Smart Wallet usa MPC (Multi-Party Computation): chave é split, nenhuma entidade vê inteira. Menos risco que custódia centralizada, mais que self-custodial. Trade-off consciente.
Próxima camada: Intent-based architecture
AA abre porta pra "intent-based transactions": você diz o que quer ("quero trocar 100 USDC por ETH"), e solver procura melhor rota (DEX, bridge, etc). Sem entender o flow.
Isso é o futuro, mas é tópico de outro post.
Na Alienhub, estamos construindo smart wallets customizados pra B2B2C (você embutida em seu app). AA é the foundation. Se você quer UX de Stripe em sua dApp, smart account é não-negotiable. Vamo bora.
Construindo seu SaaS?
Receba insights semanais sobre produto, tecnologia e negócios para fundadores de SaaS e Micro-SaaS.
Continue Lendo

