História do desenvolvimento da abstração de contas Ethereum: das grandes mudanças do EIP4337 ao EIP7702

Análise aprofundada da história e futuro da abstração de contas do Ethereum

Introdução

Este artigo é dividido em duas grandes partes:

A primeira parte começa com a primeira proposta AA de 2015, sistematizando os principais conteúdos das propostas EIP até agora, revisitando o desenvolvimento histórico das propostas AA e avaliando de forma abrangente as vantagens e desvantagens de cada proposta.

A segunda parte foca na comparação do feedback do mercado fraco encontrado após o lançamento do EIP4337, analisando em profundidade o EIP7702, que será incluído na próxima atualização do Ethereum. Uma vez que esta proposta seja fundida, mudará completamente a forma das aplicações em cadeia.

EIP-7702 tem um significado revolucionário, vamos discutir em detalhes.

1. A background da abstração de contas

1.1 a localização do significado da abstração de contas

O fundador do Ethereum, Vitalik, ao atualizar o roteiro do ETH no final de 2023, afirmou que a configuração da abstração de contas não mudou. Atualmente, o modelo principal está passando do EIP-4337 para a próxima fase: conversão voluntária de contas EOA.

Mais de um ano após o lançamento do EIP4337, em 1 de março de 2023, foi oficialmente anunciado em Denver durante o WalletCon (. A proposta obteve amplo reconhecimento dos usuários, mas não foi amplamente utilizada. Nesse ambiente de mercado contraditório, o progresso do EIP-7702 foi significativamente antecipado e já foi confirmado que será integrado na próxima atualização.

) 1.2 A situação atual do mercado de abstração de contas

Após um ano e meio de desenvolvimento, o EIP4337 possui um total de 12 milhões de endereços nas blockchains principais. Dentre eles, há apenas 6.764 endereços ativos na rede principal do Ethereum, o que é uma grande diferença em relação ao número de endereços EOA e CA. O número de endereços independentes na rede principal do Ethereum já alcançou 270 milhões, o que demonstra que o EIP4337 não teve praticamente nenhum desenvolvimento substancial na rede principal.

No entanto, isso não afeta o valor essencial da abstração de contas. O design do EIP4337 destina-se a dificultar a resolução adequada do problema de compatibilidade retroativa da mainnet. Com a integração nativa da abstração de contas em várias cadeias L2, o número de endereços EIP4337 explodiu em crescimento nas L2, com a Base e a cadeia Polygon alcançando 1 milhão e 3 milhões de usuários ativos mensais em julho, o que é bastante considerável.

Portanto, o design do EIP4337 não é um erro, ele possui muitas vantagens. A situação atual decorre das diferenças entre a mainnet e o L2, que necessitam de soluções adequadas a cada uma.

![Análise aprofundada do passado e futuro da abstração de contas do Ethereum]###https://img-cdn.gateio.im/webp-social/moments-cecbf67df71971d38b0a927be5e4c4d9.webp(

2. O que é a abstração de contas?

A abstração de contas resolve essencialmente o problema da separação de propriedade.

Na arquitetura EVM, existem dois tipos de contas: contas externas ) EOA ( e contas de contrato ) Contract Account (. A propriedade e os direitos de assinatura da conta externa são detidos pela mesma entidade. A pessoa que possui a chave privada não só possui a "propriedade" da conta, mas também tem o direito de "assinar a transferência de todos os ativos".

Isto é determinado pela estrutura de transação da conta Ethereum. A partir da estrutura da transação, pode-se ver que a transação padrão do Ethereum não possui o campo From. Ao transferir fundos, qual endereço de fundos está sendo consumido é determinado pelos parâmetros VRS ), onde a assinatura do usuário ( é usada para decifrar o endereço From.

Isto envolve conceitos como criptografia assimétrica, como ECDSA, e funções de limiar unidirecionais, sem aprofundar. Em suma, isso é garantido pela segurança da criptografia, o que também causou a atual dificuldade na fusão da propriedade dos endereços EOA.

O efeito central do EIP4337 é adicionar o Endereço do Remetente no campo da transação, separando assim a chave privada do endereço operado.

A razão pela qual a separação de propriedade é tão importante é que o design da conta externa )EOA( irá gerar mais problemas:

  1. Dificuldade na proteção da chave privada: a perda da chave privada pelo usuário significa a perda de todos os ativos.

  2. Algoritmos de assinatura escassos: o protocolo nativo só pode usar algoritmos de assinatura e verificação ECDSA ao validar transações.

  3. Permissões de assinatura altas: sem múltiplas assinaturas nativas ), as múltiplas assinaturas só podem ser implementadas por meio de contratos inteligentes (, uma única assinatura pode executar qualquer operação.

  4. As taxas de transação só podem ser pagas em Éter, não suportam transações em lote.

  5. Vazamento de privacidade da transação: transações ponto a ponto são fáceis de analisar as informações privadas do titular da conta.

Essas limitações tornam difícil para os usuários comuns utilizarem o Ethereum:

Primeiro, para usar qualquer aplicativo na Ethereum, os usuários devem possuir Éter ) e assumir o risco de volatilidade de preços (.

Em segundo lugar, os usuários precisam lidar com lógica de taxas complexa, o preço do Gas, o limite do Gas, o bloqueio de transações ) a ordem do Nonce ( e outros conceitos que são demasiado complexos para os usuários.

Por fim, embora muitas carteiras ou aplicações de blockchain tentem melhorar a experiência do usuário através da otimização de produtos, os resultados têm sido muito limitados.

Portanto, a solução está na implementação da abstração de contas, desacoplando a propriedade )Owner( e os direitos de assinatura )Signer(, resolvendo assim gradualmente os problemas mencionados acima.

Historicamente, houve várias propostas, que acabaram por convergir em duas direções.

![Análise profunda do passado e futuro da abstração de contas do Ethereum])https://img-cdn.gateio.im/webp-social/moments-65d1ef9656425666ee30c38bbb63e769.webp(

3. Revisão do contexto das propostas de AA

A solução para o problema parece ter muitas propostas de EIP, mas no fundo é apenas duas abordagens centrais. No passado, cada EIP que não foi aprovado reuniu questões que se tornaram os pontos de ruptura da proposta atual.

) 3.1 Primeiro caminho: transformar o endereço EOA em endereço CA

No dia 15 de novembro de 2015, Vitalik propôs uma nova estrutura de conta baseada em contratos em torno do EIP-101. Mudou o endereço para ter apenas código e espaço de armazenamento, alterou o suporte das taxas para serem pagas em ERC20, através de contratos pré-compilados, transformou o token nativo em um tipo de ERC20 para manter o saldo ### que pode ter funcionalidades de autorização de cobrança, ( e simplificou os campos da transação para apenas to, startgas, data e code.

Agora parece que é uma transformação estilo Grande Salto, que irá alterar significativamente o design subjacente, permitindo que cada endereço de conta tenha sua própria lógica de "código" ), que é precisamente o efeito que o EIP-7702 pretende alcançar (.

pode também derivar outras funcionalidades, como:

  1. Permitir que as transações utilizem mais algoritmos de criptografia, podendo o método de verificação da assinatura ser especificado pelo código interno de cada endereço.

  2. Possui características de resistência a ataques quânticos, pois o código pode ser atualizado.

  3. Fazer com que o Éter possua características funcionais consistentes com os contratos ERC20, tendo como efeito central a capacidade de autorização de retenção, sem necessidade de consumir a moeda nativa.

  4. Aumentar o espaço de personalização da conta, compatível com recuperação social, suporte a SBT, recuperação de chave, etc.

As razões para não conseguir avançar são simples, claramente o ritmo foi demasiado rápido, e a consideração das atuais questões de conflito de hash nas transações e das vulnerabilidades de segurança foi inadequada, por isso tem estado em espera. Mas cada princípio positivo tornou-se uma das funcionalidades centrais das subsequentes EIP4337 e EIP7702.

Mais tarde, houve uma série de EIPs que tentaram aprimorar esta lógica:

EIP-859: abstração de contas da cadeia principal )2018-01-30(

Tentativa de resolver problemas de implantação de código. A função principal é que, se o contrato da parte transacionadora não estiver implantado, o código anexo à transação será utilizado para implantar a carteira do contrato. Além disso, foi proposta uma nova opcode PAYGAS, que além de pagar o gás, também se torna o delimitador entre a parte de verificação e a parte de execução nos parâmetros da transação.

Embora na época tenha terminado sem resultados, isso também se tornou uma das lógicas centrais do EIP7702. Cada transação do EIP7702, combinada com uma estrutura de transação especial, pode incluir um certo código, permitindo que o endereço EOA tenha capacidade de contrato nesta transação.

EIP-7702: configurar o código da conta EOA )2024-05-07(

Este também é o núcleo do mecanismo discutido posteriormente neste artigo, o EIP. Vitalik publicou o EIP-7702 como uma alternativa ao EIP-3074. Portanto, o EIP-3074 foi descontinuado, e o EIP-7702 está confirmado para ser incluído no próximo hard fork ETH Prague/Electra)Pectra(, cujos detalhes vamos expandir a seguir.

) 3.2 Segunda rota: deixar o endereço EOA conduzir o endereço CA

EIP-3074: adicionar os códigos de operação AUTH e AUTHCALL ###2020-10-15(

Adicionar dois novos OpCodes AUTH e AUTHCALL no EVM, permitindo que EOA autorize contratos a chamar outros contratos em vez da identidade EOA através desses dois opcodes.

Em resumo, um EOA pode enviar uma mensagem assinada ) para um contrato ( em que confia, chamado de Invoker ). Este contrato Invoker pode usar os códigos de operação AUTH e AUTHCALL para emitir transações em nome deste EOA.

EIP-4337: implementar a abstração de contas na memória de transações (2021-09-29)

Inspirado no MEV, seu valor central é que pode evitar completamente alterações no protocolo da camada de consenso.

O EIP4337 propõe um novo objeto de transação chamado UserOperation, que é enviado pelos usuários para o pool de memória, onde os bundlers o empacotam em massa a partir da perspectiva dos mineradores para a execução de transações de contratos. Essencialmente, isso traz as transações subjacentes e a operação da conta para serem executadas no nível do contrato.

EIP-5189: operar contas abstratas através de endossantes (2022-06-29)

Esta é uma otimização da lógica do EIP4337, que previne ataques de bloqueio DoS de Bundlers maliciosos através da criação de um mecanismo de endossante de penalização de fundos.

( 3.3 Outras propostas para apoiar a abstração de contas

EIP-2718: embalagem de novos tipos de transação )2020-06-13###

Esta é uma proposta que já foi finalizada, definindo um novo tipo de transação, como um envelope para futuros tipos de transação.

O efeito final é que, ao introduzir um novo tipo de transação, é possível diferenciá-lo através de uma codificação específica, permitindo que seja apenas compatível com versões anteriores, sem necessidade de compatibilidade com versões futuras. O exemplo mais comum é o EIP1559, que distingue as taxas de transação, utilizando uma nova codificação de tipo de transação, sem afetar os tipos de transação legados originais.

EIP-3607: impedir que endereços EOA implantem contratos (2021-06-10)

Esta é uma solução suplementar no caminho AA, destinada a prevenir conflitos entre o endereço de implementação do contrato e o endereço EOA. Ele controlará o método de geração do contrato, impedindo que o sistema permita a implementação de código em endereços que já são endereços EOA. Este risco é, na verdade, muito pequeno, uma vez que o endereço Ethereum tem 160 bits de comprimento; embora exista um método para colidir a chave privada com um endereço de contrato específico, estima-se que, com a totalidade do poder de hashing do Bitcoin, ainda seriam necessárias cerca de um ano.

( 3.4 Como entender a evolução da abstração de contas?

Primeiro, é necessário entender o valor após a conversão para CA.

Basicamente, é o efeito prático do EIP-4337, que pode realizar:

  • recuperação social
  • agregação de assinaturas
  • Transação em massa
  • proteção contra ataques DOS
  • Pagamento da taxa de Gas
  • Gas de pagamento ERC20
  • Contrato pré-compilado de pagamento
  • Transferência sem Gas
  • Gestão de permissões
  • Limitações de negociação
  • carteira atualizável
  • ambiente de execução em sandbox

No entanto, a principal desvantagem do EIP-4337 é que vai contra o princípio da motivação humana.

Parece melhor, mas caiu em um ciclo vicioso de desenvolvimento de mercado :D Muitos Dapps ainda não são compatíveis, então os usuários não estão dispostos a usar endereços CA, e usar CA tem até custos de transação mais altos ) em cenários de transferência comum, as taxas de transação também podem dobrar ###, dependendo muito da compatibilidade do próprio Dapp.

Portanto, até agora, não se popularizou na mainnet do Ethereum.

O custo é o critério de avaliação mais importante para os usuários, e deve ser reduzido.

Mas para realmente reduzir o GAS, é necessário que o Ethereum em si faça uma atualização de soft fork, modificando o cálculo do GAS ou os módulos de consumo de GAS do código de operação. Já que vai haver um soft fork, por que não considerar diretamente o EIP-7702?

Análise aprofundada do passado e futuro da abstração de contas do Ethereum

4. Análise Completa do EIP-7702

( 4.1 O que é o EIP-7702

Ele distingue-se através de novos tipos de transações, permitindo que EOA tenha temporariamente funcionalidades de contrato inteligente em uma única transação, apoiando assim transações em massa, transações sem Gas e gestão de permissões personalizadas, sem a necessidade de introduzir novos opCodes EVM ) que afetem a compatibilidade retroativa ###.

Ele permite que os usuários obtenham a maior parte das capacidades de AA sem a necessidade de implantar contratos inteligentes, e pode até oferecer a capacidade de terceiros iniciarem transações em nome do usuário, sem que o usuário precise fornecer a chave privada, apenas necessitando assinar informações de autorização.

( 4.2 estrutura de dados

Ele define um novo tipo de transação 0x04, cujo TransactionPayload é o resultado da serialização RLP do conteúdo a seguir:

rlp)[ chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destino, valor, dados, lista_de_acesso, lista_de_autorização, signature_y_parity, signature_r, assinatura_s ]###

É importante que o novo objeto authorization_list armazene o código que os signatários desejam executar em sua EOA. O usuário assina a transação ao mesmo tempo que assina o código do contrato a ser executado, que existe como uma lista bidimensional, indicando que pode armazenar informações de várias operações em lote, permitindo a execução de operações em lote.

authorization_list = [[chain_id, address, nonce, y_parity, r, s], ...]

( 4.3 vida de negociação

ETH-1.06%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 7
  • Compartilhar
Comentário
0/400
0xLuckboxvip
· 12h atrás
4337 ainda não está quente e já vai mudar para 7702
Ver originalResponder0
DefiSecurityGuardvip
· 07-20 13:21
mmm... padrão de lançamento suspeito detectado no eip4337. chamando sinais de alerta neste caso. não é para espalhar medo, mas os vetores de ataque são *preocupantes*
Ver originalResponder0
FastLeavervip
· 07-18 23:22
Já estou a sair, este eip está a dar-me dores de cabeça.
Ver originalResponder0
AirdropChaservip
· 07-18 23:19
4337 é tudo armadilha, 7702 também não é necessariamente bom.
Ver originalResponder0
LightningAllInHerovip
· 07-18 23:18
Eh, ouvi dizer que o 4337 vai ser anulado? Isso é uma Informação favorável!
Ver originalResponder0
GameFiCriticvip
· 07-18 23:13
AA mudar de forma repetida para quê? O investidor de retalho perde moeda ou perde moeda.
Ver originalResponder0
ser_we_are_earlyvip
· 07-18 23:08
Quando é que os investidores de retalho conseguem perceber isto?
Ver originalResponder0
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)