EIP 3074

A Ethereum Improvement Proposal 3074 (EIP-3074) constitui uma atualização do protocolo Ethereum que aprimora a abstração de contas ao introduzir dois novos opcodes, AUTH e AUTHCALL. Estes permitem que contratos inteligentes realizem transações em nome de Externally Owned Accounts (EOA), mediante autorização adequada do utilizador, viabilizando modelos de transação mais flexíveis, como transações sem custos de gas e o agrupamento de operações.
EIP 3074

A Ethereum Improvement Proposal (EIP) 3074 constitui uma atualização de grande relevância para o protocolo Ethereum, concebida para reforçar as capacidades de abstração de contas e permitir que os utilizadores autorizem contratos externos a executar transações por sua conta. Esta proposta introduz dois novos opcodes: AUTH e AUTHCALL, que facultam aos smart contracts a possibilidade de operar em nome das Externally Owned Accounts (EOA) dos utilizadores após obterem uma autorização assinada. Deste modo, a experiência dos utilizadores na Ethereum torna-se significativamente mais eficiente, reduz-se a complexidade das transações e criam-se condições para funcionalidades avançadas, como transações sem custos de gás e agrupamento de operações.

Contexto: Origem da EIP 3074

A Ethereum Improvement Proposal 3074 foi apresentada no final de 2020 pelos desenvolvedores Sam Wilson, Ansgar Dietrichs e Matt Garnett. Esta iniciativa surgiu devido à crescente necessidade, no ecossistema Ethereum, de abstração de contas e modelos de transação mais flexíveis. Antes da EIP-3074, o modelo de transação da Ethereum era bastante rígido, obrigando os utilizadores a iniciarem transações diretamente a partir das suas externally owned accounts e a suportarem as taxas de gás, o que restringia múltiplos casos de uso e limitava melhorias à experiência do utilizador.
A Ethereum tem vindo a enfrentar desafios para melhorar a experiência dos utilizadores e tornar a entrada mais acessível. O modelo tradicional exige que os utilizadores compreendam as taxas de gás, gerem chaves privadas e interajam diretamente com a blockchain, dificultando o acesso a novos participantes. A EIP-3074 insere-se numa abordagem de longo prazo ao conceito de abstração de contas, discutido há vários anos na comunidade Ethereum, com o objetivo de tornar as interações com a blockchain mais intuitivas e acessíveis.
No percurso de desenvolvimento da Ethereum, a EIP-3074 representa uma evolução técnica relevante, ao propor uma melhoria progressiva mediante a extensão do modelo de contas existente, sem o reescrever totalmente. Esta opção garante compatibilidade com os atuais modelos de segurança e infraestrutura da Ethereum, ao mesmo tempo que introduz melhorias funcionais substanciais.

Mecanismo de Funcionamento: Operação da EIP 3074

A EIP-3074 introduz dois novos opcodes que, em conjunto, viabilizam a abstração de contas:

  1. AUTH: Valida a assinatura do utilizador e devolve o endereço do signatário. Quando um contrato recorre a este opcode, verifica se a assinatura apresentada é válida e confirma a identidade do signatário.
  2. AUTHCALL: Permite que um contrato autenticado pelo AUTH execute operações em nome da externally owned account do utilizador. Desta forma, o contrato pode utilizar as permissões do utilizador para efetuar transferências de fundos ou interagir com outros contratos.
    O processo decorre segundo os seguintes passos:
  3. O utilizador gera uma assinatura com permissões e limitações específicas.
  4. O utilizador envia essa assinatura para um contrato invocador.
  5. O contrato invocador valida a assinatura e obtém o endereço do utilizador através do opcode AUTH.
  6. Após validação, o contrato invocador pode executar diversas operações em nome do utilizador, recorrendo ao opcode AUTHCALL.
  7. Estas operações ficam registadas na blockchain como executadas pela conta EOA do utilizador, embora sejam, na prática, realizadas pelo contrato.
    Um dos aspetos centrais do design da EIP-3074 é o modelo de permissões. Os utilizadores podem definir com precisão o âmbito das permissões concedidas ao contrato invocador, especificando quais os contratos autorizados, os montantes que podem ser transferidos e o período de validade da autorização. Este controlo detalhado assegura que, mesmo ao delegar ações a contratos, os utilizadores mantêm elevados níveis de segurança e autonomia.
    Adicionalmente, a EIP-3074 impede a reutilização de assinaturas entre contratos diferentes, ao incluir dados de recuperação do signatário e endereços dos contratos na assinatura, prevenindo riscos de segurança.

Riscos e Desafios da EIP 3074

Apesar dos avanços funcionais proporcionados pela EIP-3074, subsistem riscos e desafios:

  1. Riscos de Segurança
    • Risco de reutilização de assinaturas: Assinaturas mal desenhadas podem ser reutilizadas por contratos maliciosos
    • Permissões excessivas: Os utilizadores podem conceder inadvertidamente permissões demasiado amplas aos contratos invocadores
    • Falsificação de interfaces: Aplicações maliciosas podem induzir os utilizadores a autorizar ações perigosas
  2. Desafios Técnicos de Implementação
    • Problemas de compatibilidade com carteiras e aplicações existentes
    • Definição e adoção de normas de assinatura
    • Necessidade de alterações ao software de nodes e clientes
  3. Considerações de Experiência do Utilizador
    • Modelos de permissões complexos podem ser difíceis de explicar ao utilizador médio
    • Desafios no design da interface para pedidos de assinatura
    • Garantir que os utilizadores compreendem realmente as permissões concedidas
  4. Impacto na Rede
    • Potenciais efeitos no desempenho da rede e no tamanho dos blocos
    • Concorrência e articulação com outras propostas de abstração de contas
      A implementação da EIP-3074 exige consenso alargado da comunidade e auditorias de segurança rigorosas. Por introduzir funcionalidades que podem alterar o modelo fundamental de transações da Ethereum, o seu impacto a longo prazo deve ser cuidadosamente avaliado. Investigadores de segurança salientam que, sem salvaguardas adequadas, os opcodes AUTH e AUTHCALL podem ser alvo de exploração maliciosa, exigindo medidas de segurança robustas na versão final.
      As equipas de desenvolvimento da Ethereum têm de equilibrar inovação e segurança, garantindo que a implementação da EIP-3074 oferece os benefícios previstos sem criar novas vulnerabilidades ou riscos.
      A Ethereum Improvement Proposal 3074 representa um marco na evolução da Ethereum rumo a uma plataforma blockchain mais flexível e centrada no utilizador. Ao introduzir mecanismos de abstração de contas, pode resolver vários desafios da experiência do utilizador, como a complexidade das taxas de gás e a morosidade das transações. Para os desenvolvedores, a EIP-3074 abre novas oportunidades para criar aplicações descentralizadas mais sofisticadas e intuitivas. A longo prazo, estas melhorias são essenciais para a adoção massiva da Ethereum, ao facilitar o acesso de novos utilizadores e proporcionar uma base técnica para casos de uso inovadores. À medida que o ecossistema Ethereum evolui, propostas como a EIP-3074 serão determinantes para construir um futuro blockchain mais inclusivo e funcional.
Um simples "gosto" faz muito

Partilhar

Glossários relacionados
época
No contexto de Web3, o termo "ciclo" designa processos recorrentes ou janelas temporais em protocolos ou aplicações blockchain, que se repetem em intervalos fixos de tempo ou de blocos. Entre os exemplos contam-se os eventos de halving do Bitcoin, as rondas de consenso da Ethereum, os planos de vesting de tokens, os períodos de contestação de levantamentos em Layer 2, as liquidações de funding rate e de yield, as atualizações de oráculos e os períodos de votação de governance. A duração, as condições de disparo e a flexibilidade destes ciclos diferem conforme o sistema. Dominar o funcionamento destes ciclos permite gerir melhor a liquidez, otimizar o momento das suas operações e delimitar fronteiras de risco.
O que é um Nonce
Nonce pode ser definido como um “número utilizado uma única vez”, criado para garantir que uma operação específica se execute apenas uma vez ou em ordem sequencial. Na blockchain e na criptografia, o nonce é normalmente utilizado em três situações: o nonce de transação assegura que as operações de uma conta sejam processadas por ordem e que não possam ser repetidas; o nonce de mineração serve para encontrar um hash que cumpra determinado nível de dificuldade; e o nonce de assinatura ou de autenticação impede que mensagens sejam reutilizadas em ataques de repetição. Irá encontrar o conceito de nonce ao efetuar transações on-chain, ao acompanhar processos de mineração ou ao usar a sua wallet para aceder a websites.
Descentralizado
A descentralização consiste numa arquitetura de sistema que distribui a tomada de decisões e o controlo por vários participantes, presente de forma recorrente na tecnologia blockchain, nos ativos digitais e na governação comunitária. Este modelo assenta no consenso entre múltiplos nós de rede, permitindo que o sistema opere autonomamente, sem depender de uma autoridade única, o que reforça a segurança, a resistência à censura e a abertura. No universo cripto, a descentralização manifesta-se na colaboração global de nós do Bitcoin e do Ethereum, nas exchanges descentralizadas, nas carteiras não custodiais e nos modelos de governação comunitária, nos quais os detentores de tokens votam para definir as regras do protocolo.
cifra
Um algoritmo criptográfico consiste num conjunto de métodos matemáticos desenvolvidos para proteger informação e validar a sua autenticidade. Os principais tipos incluem encriptação simétrica, encriptação assimétrica e algoritmos de hash. No universo blockchain, estes algoritmos são fundamentais para a assinatura de transações, geração de endereços e preservação da integridade dos dados, assegurando a proteção dos ativos e a segurança das comunicações. As operações dos utilizadores em wallets e exchanges, como solicitações API e levantamentos de ativos, dependem igualmente da implementação segura destes algoritmos e de uma gestão eficiente das chaves.
Pendências
Backlog corresponde à acumulação de pedidos ou tarefas pendentes numa fila, causada pela insuficiência da capacidade de processamento do sistema ao longo do tempo. No setor das criptomoedas, os exemplos mais frequentes incluem transações à espera de serem incluídas num bloco na mempool da blockchain, ordens em fila nos motores de correspondência das exchanges, e pedidos de depósito ou levantamento sujeitos a revisão manual. Os backlogs podem provocar atrasos nas confirmações, aumento das taxas e slippage na execução.

Artigos relacionados

Como Aposta ETH
Principiante

Como Aposta ETH

À medida que a The Merge está concluída, o Ethereum finalmente transitou de PoW para POs. Os apostadores agora mantêm a segurança da rede ao stastarem ETH e obterem recompensas. É importante escolher os métodos e prestadores de serviços adequados antes de pôr em jogo. À medida que a The Merge está concluída, o Ethereum finalmente transitou de PoW para POs. Os apostadores agora mantêm a segurança da rede ao stastarem ETH e obterem recompensas. É importante escolher os métodos e prestadores de serviços adequados antes de pôr em jogo.
2022-11-21 10:01:57
O que é a fusão?
Principiante

O que é a fusão?

Com o Ethereum passando pela fusão final da rede de teste com a Mainnet, o Ethereum fará a transição oficial do PoW para o PoS. Então, qual impacto essa revolução sem precedentes trará para o mundo das criptomoedas?
2024-07-10 09:12:24
O que é o EtherVista, o "Novo Padrão para DEX" auto-proclamado?
Intermediário

O que é o EtherVista, o "Novo Padrão para DEX" auto-proclamado?

Este artigo fornece uma análise detalhada da exchange descentralizada (DEX) emergente EtherVista e seu token de plataforma, VISTA. Ele explora como a EtherVista visa desafiar o modelo AMM (Automated Market Maker) existente, especialmente o da Uniswap, por meio de seus mecanismos de negociação exclusivos e modelo de distribuição de taxas. O artigo também mergulha nos contratos inteligentes da EtherVista, na tokenomics e em como atrai usuários oferecendo taxas de gás baixas e um sistema inovador de compartilhamento de receita.
2024-09-10 15:49:43