Pular para o conteúdo
0%

EIP-7702: guia rápido de integração para desenvolvedores Ethereum pós-pectra

Lisa Ma headshot

Escrito por Lisa Ma

Publicado em 19 de maio de 20258 min de leitura

EIP-7702 na atualização Pectra do Ethereum, dando às EOAs capacidades de smart account
EIP-7702 dá às EOAs capacidades de smart account

TL;DR? Entendemos. Confira nossa série no X para explicações rápidas e demos.

O roadmap do Ethereum rumo à adoção mainstream de cripto está causando repercussão com EIP-7702, incluído no hardfork Pectra. Esse upgrade marca um momento decisivo na jornada do Ethereum rumo à** account abstraction, **um avanço projetado para tornar as experiências onchain mais fluidas, inteligentes e acessíveis. Especificamente, o EIP-7702 permite que Externally Owned Accounts (EOAs) usem recursos de smart contract account.

Como desenvolvedores, vocês são os arquitetos da próxima geração de inovação onchain, e estamos aqui para garantir que vocês estejam preparados para aproveitar o EIP-7702 em todo seu potencial. Como os construtores da infraestrutura que alimenta milhões de aplicações onchain, estamos aqui para ajudar a orientar vocês.

Este é o primeiro post da nossa série de mergulho profundo no EIP-7702, voltada especificamente para desenvolvedores de aplicações como você. Juntos, vamos explorar o que torna essa proposta tão impactante, como ela funciona por baixo dos panos, e as principais considerações técnicas para ajudar você a decidir como (e por que) integrar esses recursos de ponta em suas aplicações. Vamos construir o futuro — um upgrade de cada vez.

O tl;dr:

  • O EIP-7702 permite que EOAs deleguem controle a smart contract accounts que podem executar código diretamente a partir de seus endereços
  • É compatível com o padrão de AA predominante, o ERC-4437, de modo que carteiras existentes podem se tornar smart contract wallets sem criar um novo endereço e transferir ativos
  • Para os usuários, isso viabilizará recursos no estilo web2, incluindo recuperação de conta e login com passkey para autenticação mais fácil, além de benefícios da web3, como taxas de transação patrocinadas e pagamento de gas em qualquer token, não apenas ETH

Estado atual das contas Ethereum

Em maio de 2024, Vitalik Buterin apresentou o EIP-7702, uma proposta que pode mudar fundamentalmente como as contas Ethereum funcionam. O que começou como um rascunho de 22 minutos antes de uma all core dev call agora está incluído no upgrade Pectra. O EIP-7702 representa um passo crucial rumo à account abstraction completa, ao mesmo tempo em que resolve desafios imediatos de usabilidade.

Mas para entender para onde o Ethereum está indo, precisamos entender sua arquitetura atual.

Hoje, os usuários do Ethereum contam com dois tipos de contas: externally owned accounts (EOAs), controladas por chaves privadas, e** smart contract accounts (SCA)**, que executam código diretamente:

Externally owned accounts:

  • Podem iniciar transações
  • Não podem executar código diretamente a partir de seu endereço
  • Limitadas a operações básicas

Smart contract accounts:

  • Podem executar código
  • Não podem iniciar transações
  • Mais flexíveis e programáveis

O objetivo do EIP-7702 é unir essas duas ao permitir que qualquer conta se comporte como um smart contract. Ao permitir que EOAs executem código diretamente a partir de seu endereço, desenvolvedores Ethereum podem construir UX onchain com nível de Web2, com recursos incluindo:

  • Session keys
  • Recuperação social de contas
  • Mecanismos de autenticação que não exigem seed phrase
  • E o agrupamento de múltiplas ações em um único clique

Veja o que você deve saber sobre como o EIP-7702 funciona.

O que saber sobre EIP-7702 e ERC-4337

O EIP-7702 não substitui o padrão de AA já existente do Ethereum, o ERC-4337. O EIP-7702 foi projetado para complementar o ERC-4337 e facilitar que esses recursos de account abstraction cheguem aos usuários. Mas o ERC-4337 tem uma limitação:

  • Ele exigia a criação de uma nova carteira, pois não é retrocompatível com EOAs

O EIP-7702 remove essa limitação sem mudanças mais profundas na lógica de consenso da EVM:

  • Usa carteiras existentes
  • Não requer novas contas ou migrações
  • Se encaixa perfeitamente com a infraestrutura do ERC-4337
  • EOAs existentes simplesmente delegam a lógica de smart contract via um delegation designator

Fluxo de execução do EIP-7702

O EIP-7702 se baseia em um mecanismo de delegação inteligente, que depende dos usuários fornecerem autorização para a execução de código de smart contract. Essa autorização é permanente até ser explicitamente revogada pelo usuário, o que significa que os usuários confiam que o código que estão autorizando não é malicioso.

O fluxo de execução é o seguinte:

  1. Configuração: a EOA decide delegar controle a uma smart contract wallet
  2. Validação: o sistema verifica se a delegação está assinada corretamente
  3. Execução: a EOA recebe as capacidades do smart contract
  4. Limpeza: se a EOA decidir revogar o controle do smart contract, outra transação 7702 deve ser enviada para definir a delegação de volta a 0.

As EOAs passam a poder atuar como uma smart contract account armazenando um delegation designator. Esse designator é um código especial, 0xef0100 \|\| address, onde o address aponta para um smart contract que contém o recurso ou ação desejada.

O delegation designator usa o opcode banido 0xef para se distinguir de dados comuns, garantindo que as operações de execução de código carreguem o código a partir do endereço designado.

Quando uma transação é enviada para a EOA, a EOA executa o código no endereço designado, ganhando as funcionalidades de uma smart contract account.

Considerações sobre adoção e segurança para desenvolvedores de aplicações

O caminho para a adoção do EIP-7702 tem uma dependência principal: os provedores de carteira. Como as carteiras estão upstream em relação às aplicações, sem suporte das carteiras, os recursos habilitados pelo EIP-7702 não podem ser aproveitados pelos desenvolvedores de aplicações e seus usuários.

O EIP-7702 também apresenta um modelo de segurança diferente em comparação com smart contract accounts. Principalmente, contas EIP-7702 mantêm sua chave privada original de EOA, que pode sobrepor regras de segurança de smart account.

A forma como você integra a funcionalidade de carteira habilitada pelo EIP-7702 deve depender de alguns fatores: o estágio de desenvolvimento da sua aplicação, o tipo de usuários que você atende e quanta flexibilidade você precisa ao implantar sua aplicação em múltiplas chains.

Para desenvolvedores com usuários existentes e embedded wallets

Se você já tem uma embedded wallet, tem sorte. Vamos ajudar você a gerenciar diferentes tipos de usuário por meio das nossas smart accounts:

  • Usuários com EOA existente podem fazer upgrade para contas ERC-4337
  • Novos usuários podem começar diretamente com contas ERC-4337 puras
  • O sistema vai suportar tanto smart EOAs (EOA+7702) quanto contas ERC-4337 puras simultaneamente

Para desenvolvedores que ainda não implantaram sua aplicação

Para novas apps começando do zero: embora tanto o ERC-4337 quanto o EIP-7702 habilitem account abstraction, eles atendem a necessidades diferentes em aplicações blockchain modernas.

O ERC-4337 oferece smart contract accounts puras, com programabilidade máxima, ampla customização de transações e ferramental já estabelecido, tornando-o ideal para aplicações single-chain e para a maioria das aplicações multi-chain em que a funcionalidade da conta é primordial.

Em contraste, o EIP-7702 oferece uma abordagem híbrida que permite que contas funcionem tanto como EOAs quanto como smart contracts, viabilizando compatibilidade cross-chain sem atrito e endereços consistentes entre redes, ao mesmo tempo em que exige menor custo inicial de gas, já que não é necessário implantar o contrato imediatamente.

Escolha o ERC-4337 quando:

  • Programabilidade profunda da conta for um requisito central
  • Você estiver construindo uma app multichain, mas não precisar da flexibilidade de usar uma EOA em algumas chains e uma SCA em outras
  • Custos de gas não forem uma preocupação primária
  • Você precisar de ampla customização de transações
  • Você quiser aproveitar a infraestrutura 4337 já existente

Escolha o EIP-7702 quando:

  • Você estiver construindo uma app multichain e endereços consistentes entre redes forem um requisito chave
  • Os custos iniciais de gas forem uma preocupação
  • A retrocompatibilidade com a infraestrutura de EOA for importante
  • Você quiser flexibilidade para começar simples e evoluir com o tempo

A principal vantagem do EIP-7702 é sua flexibilidade: você não é obrigado a escolher entre as capacidades de EOA e de smart account, o que o torna particularmente valioso para aplicações que precisam interagir com infraestrutura blockchain tanto tradicional quanto moderna, ao mesmo tempo em que planejam expansão cross-chain.

Para apps que trabalham com carteiras externas de terceiros

Muitas das carteiras mais amplamente usadas, como a MetaMask, planejam incorporar funcionalidade de smart wallet neste ano. Aqui estão alguns tópicos para você explorar:

  • Batching: a capacidade de uma única autorização executar múltiplas ações de forma atômica, como em DEXs, onde usuários aprovam um ERC-20 e depois gastam essa aprovação
  • Os riscos da delegation
  • Considere usar nosso SDK para simplificar conexões com smart wallets externas

Considerações adicionais

Para desenvolvedores de aplicações que decidirem fazer upgrade de EOAs existentes usando o EIP-7702 e quiserem usar *todos*** os recursos habilitados pelo 7702, vocês precisarão de um relayer.** Embora existam diferentes arquiteturas de relayer, nossa recomendação é usar bundlers 4337 porque:

  • Fornecem interfaces padronizadas para relaying;
  • Incluem sistemas de paymaster embutidos;
  • Garantem compatibilidade futura, e
  • Podem oferecer suporte a resistência à censura por meio de um mempool público

Se você precisar de um bundler 4337, o Alchemy Bundler tem o que você precisa.

Olhando para frente: o caminho até a adoção mainstream

Embora o EIP-7702 prometa tornar o Ethereum mais parecido com a web, os desenvolvedores devem observar que a adoção após o lançamento inicial na mainnet depende de as carteiras integrarem os recursos primeiro — e, assim, a usabilidade do EIP-7702 provavelmente será limitada. Se você quiser se manter atualizado sobre o que os desenvolvedores Ethereum estão discutindo, confira os posts mais recentes aqui.

Ajudamos você a integrar o EIP-7702

Smart wallets aumentam usuários e transações
Smart wallets aumentam usuários e transações

As smart wallets ajudam você a trazer o mundo para onchain sem fricção. Você pode aproveitar o EIP-7702 hoje para fazer upgrade das suas EOAs ou implantar novas contas ERC-4337.

  • Onboarding sem fricção: implemente logins familiares por email e redes sociais com embedded wallets
  • Transações gasless: patrocine taxas de gas para usuários e viabilize transações em um clique
  • Integração com smart account: integração fácil via SDK e suporte para ERC-4337, ERC-6900 e EIP-7702

Estamos aqui para ajudar você a aprender, construir e lançar!

  1. Explore: leia a documentação e comece a construir.
  2. Precisa de suporte?: Entre em contato! Nossa equipe está disponível 24/7 para ajudar você a implementar esses recursos

Perguntas frequentes

O que é o EIP-7702?

O EIP-7702 é um upgrade do Ethereum incluído no hardfork Pectra que permite que Externally Owned Accounts (EOAs) deleguem controle a smart contract accounts, dando a elas capacidades de smart account como agrupamento de transações, patrocínio de gas e recuperação social.

Como o EIP-7702 funciona com EOAs existentes?

O EIP-7702 permite que EOAs existentes ganhem funcionalidade de smart contract sem criar uma nova conta ou transferir ativos. A EOA armazena um delegation designator que aponta para um smart contract, permitindo que execute código diretamente a partir de seu endereço.

O EIP-7702 é compatível com o ERC-4337?

Sim, o EIP-7702 foi projetado para complementar o ERC-4337, não substituí-lo. Enquanto o ERC-4337 fornece smart contract accounts puras, o EIP-7702 torna esses recursos de account abstraction acessíveis a EOAs existentes sem exigir a criação de uma nova carteira ou migração.

Quais recursos o EIP-7702 habilita para os usuários?

O EIP-7702 habilita recursos no estilo Web2, incluindo recuperação de conta, login com passkey para autenticação mais fácil, transações com gas patrocinado, pagamento de gas em qualquer token (não apenas ETH) e o agrupamento de múltiplas ações em uma única transação.

Preciso de um relayer para usar os recursos do EIP-7702?

Se você quiser usar todos os recursos habilitados pelo EIP-7702, precisará de um relayer. Recomendamos usar bundlers 4337 porque fornecem interfaces padronizadas, sistemas de paymaster embutidos e garantem compatibilidade futura.

Quando devo escolher o EIP-7702 em vez do ERC-4337?

Escolha o EIP-7702 ao construir apps multichain que precisam de endereços consistentes entre redes, quando os custos iniciais de gas forem uma preocupação, quando a retrocompatibilidade com a infraestrutura de EOA for importante, ou quando você quiser flexibilidade para começar simples e evoluir com o tempo.

A delegação do EIP-7702 pode ser revogada?

Sim, a delegação é permanente até ser explicitamente revogada pelo usuário. Para revogar o controle do smart contract, outra transação 7702 deve ser enviada para definir a delegação de volta a zero.

Qual é a principal dependência para a adoção do EIP-7702?

A principal dependência é o suporte dos provedores de carteira. Como as carteiras estão upstream em relação às aplicações, os recursos do EIP-7702 não podem ser usados pelos desenvolvedores de aplicações e seus usuários sem a integração das carteiras.

Background gradient

Construa magia blockchain

A Alchemy combina os produtos e ferramentas de desenvolvimento Web3 mais poderosos com recursos, comunidade e suporte lendário.