Caminho de prosperidade do protocolo Ethereum: melhorias no EVM, abstração de contas e Gas multidimensional

O futuro potencial do protocolo Ethereum (seis): Capítulo da prosperidade

Algumas coisas são difíceis de classificar em uma única categoria. No design do protocolo Ethereum, muitos "detalhes" são muito importantes para o sucesso do Ethereum. Na verdade, cerca de metade do conteúdo envolve diferentes tipos de melhorias do EVM, enquanto o restante é composto por vários tópicos de nicho, e é disso que se trata a "prosperidade".

Vitalik sobre o possível futuro do Ethereum (6): The Splurge

Prosperidade: objetivo chave

  • Transformar o EVM em um "estado final" de alto desempenho e estabilidade
  • Introduzir a abstração de contas no protocolo, permitindo que todos os utilizadores desfrutem de contas mais seguras e convenientes.
  • Otimizar a economia das taxas de transação, aumentar a escalabilidade e ao mesmo tempo reduzir o risco
  • Explorar a criptografia avançada para melhorar significativamente o Ethereum a longo prazo

Vitalik sobre o possível futuro do Ethereum (seis): The Splurge

EVM melhoria

Que problema foi resolvido?

Atualmente, a EVM é difícil de analisar estaticamente, o que torna complicado criar implementações eficientes, validar formalmente o código e realizar expansões adicionais. Além disso, a eficiência da EVM é baixa, dificultando a implementação de muitas formas de criptografia avançada, a menos que haja suporte explícito através de pré-compilações.

O que é e como funciona?

O primeiro passo do roteiro de melhoria do EVM atual é o formato de objeto EVM (EOF), que está previsto para ser incluído no próximo hard fork. O EOF é uma série de EIPs que especifica uma nova versão do código EVM, com muitas características únicas, sendo a mais notável:

  • A separação entre o código (executável, mas não legível a partir da EVM) e os dados (legíveis, mas não executáveis)
  • Proibido redirecionamento dinâmico, apenas redirecionamento estático permitido
  • O código EVM não pode mais observar as informações relacionadas ao combustível
  • Adicionada uma nova mecânica de sub-rotina explícita

Os contratos antigos continuarão a existir e podem ser criados, embora possam eventualmente ser gradualmente descontinuados (podendo até ser forçados a converter para código EOF). Os contratos novos beneficiarão do aumento de eficiência trazido pelo EOF.

Após a introdução do EOF, atualizações adicionais tornaram-se mais fáceis, sendo que o desenvolvimento mais avançado é a extensão aritmética do módulo EVM (EVM-MAX). O EVM-MAX cria um conjunto de novas operações especificamente para operações de módulo e as coloca em um novo espaço de memória que não pode ser acessado por outros códigos de operação, o que torna possível o uso de otimizações como a multiplicação de Montgomery.

Uma ideia mais recente é combinar o EVM-MAX com a característica de múltiplos dados de uma única instrução (SIMD), sendo que o SIMD, como um conceito do Ethereum, já existe há muito tempo, tendo sido proposto pela primeira vez por Greg Colvin no EIP-616. O SIMD pode ser utilizado para acelerar várias formas de criptografia, incluindo funções de hash, STARKs de 32 bits e criptografia baseada em redes, e a combinação do EVM-MAX com o SIMD torna estas duas expansões orientadas para o desempenho uma combinação natural.

Vitalik sobre o possível futuro do Ethereum (6): The Splurge

Link de pesquisa existente

  • EOF:
  • EVM-MAX:
  • SIMD:

Trabalho restante e compensações

Atualmente, o EOF está previsto para ser incluído na próxima bifurcação dura. Embora seja sempre possível removê-lo no último momento, isso enfrentará grandes desafios. Remover o EOF significa que qualquer atualização futura ao EVM terá que ser feita sem o EOF, embora seja possível, pode ser mais difícil.

A principal trade-off do EVM é entre a complexidade do L1 e a complexidade da infraestrutura; o EOF é uma grande quantidade de código que precisa ser adicionada à implementação do EVM, e a verificação de código estático também é relativamente complexa. No entanto, em troca, podemos simplificar as linguagens de alto nível, simplificar a implementação do EVM e outros benefícios. Pode-se dizer que a prioridade do roteiro de melhorias contínuas do Ethereum L1 deve incluir e construir sobre o EOF.

Uma tarefa importante a realizar é implementar funcionalidades semelhantes a EVM-MAX com SIMD e realizar testes de referência sobre o consumo de gas das várias operações criptográficas.

Como interagir com outras partes do roteiro?

L1 ajusta seu EVM para que L2 também possa ser ajustado mais facilmente. Se ambos não forem ajustados de forma sincronizada, pode haver incompatibilidade, resultando em efeitos adversos. Além disso, EVM-MAX e SIMD podem reduzir os custos de gás de muitos sistemas de prova, tornando L2 mais eficiente. Isso também facilita a substituição de mais pré-compilados por código EVM que pode executar as mesmas tarefas, o que pode não afetar significativamente a eficiência.

Vitalik sobre o possível futuro do Ethereum (Seis): The Splurge

abstração de conta

Que problema foi resolvido?

Atualmente, as transações podem ser verificadas de apenas uma maneira: assinatura ECDSA. Inicialmente, a abstração de contas visava ir além disso, permitindo que a lógica de verificação da conta fosse qualquer código EVM. Isso pode ativar uma série de aplicações:

  • Mudar para criptografia quântica resistente
  • Rotacionar chaves antigas
  • Carteira de múltiplas assinaturas e carteira de recuperação social
  • Usar uma chave para operações de baixo valor, usar outra chave (ou um conjunto de chaves) para operações de alto valor
  • Permitir que os protocolos de privacidade funcionem sem intermediários, reduzindo significativamente sua complexidade e eliminando um ponto central de dependência.

Desde que a abstração de contas foi proposta em 2015, seu objetivo também se expandiu para incluir uma série de "objetivos de conveniência", como, por exemplo, uma conta que não possui ETH, mas tem alguns ERC20, podendo usar ERC20 para pagar o gas.

O que é, como funciona?

O núcleo da abstração de contas é simples: permite que contratos inteligentes iniciem transações, e não apenas EOA. Toda a complexidade vem de implementar isso de uma maneira que seja amigável para a manutenção de redes descentralizadas e prevenir ataques de negação de serviço.

Após anos de esforços, que visavam expandir funcionalidades enquanto limitavam o risco de negação de serviço (DoS), finalmente chegou-se a uma solução para implementar a "abstração ideal de contas": ERC-4337.

O funcionamento do ERC-4337 divide o processamento das operações do usuário em duas fases: validação e execução. Todas as validações são processadas primeiro, e todas as execuções são processadas em seguida. No pool de memória, as operações do usuário só serão aceitas se a fase de validação envolver apenas a sua própria conta e não ler variáveis de ambiente. Isso pode prevenir ataques de falha múltipla. Além disso, limites de gas rigorosos também são impostos à etapa de validação.

Vitalik sobre o possível futuro do Ethereum (seis): The Splurge

ligação de pesquisa existente

  • Discurso sobre a história da abstração de contas:
  • ERC-4337:
  • EIP-7702:
  • Código BLSWallet (usando a funcionalidade de agregação):
  • EIP-7562 (abstração de conta do protocolo de escrita):
  • EIP-7701 (protocolo de abstração de contas de escrita baseado em EOF):

Trabalho restante e ponderações

Atualmente, a principal necessidade é como introduzir completamente a abstração de contas no protocolo. O EIP de abstração de contas que ganhou popularidade recentemente é o EIP-7701, que implementa a abstração de contas sobre o EOF. Uma conta pode ter uma parte de código separada para validação; se a conta configurar essa parte de código, ela será executada na etapa de validação das transações provenientes dessa conta.

A principal consideração parece ser entre "escrever rapidamente uma solução que satisfaça menos pessoas" e "esperar mais tempo para possivelmente obter uma solução mais ideal", sendo que o método ideal poderia ser algum tipo de abordagem mista. Uma abordagem mista seria escrever mais rapidamente alguns casos de uso e reservar mais tempo para explorar outros casos de uso. Outra abordagem seria implantar primeiro uma versão mais ambiciosa da abstração de contas na L2.

Como interage com as outras partes do roteiro?

A lista de inclusão precisa suportar transações de abstração de conta. Na prática, a demanda por listas de inclusão é muito semelhante à demanda por pools de memória descentralizados, embora haja um pouco mais de flexibilidade para as listas de inclusão. Além disso, a implementação de abstração de conta deve ser coordenada entre L1 e L2 sempre que possível. Se no futuro esperarmos que a maioria dos usuários utilize Rollup de armazenamento de chaves, o design da abstração de conta deve ser baseado nisso.

Vitalik sobre o possível futuro do Ethereum (6): The Splurge

EIP-1559 melhoria

Que problema resolveu?

O EIP-1559 foi ativado na Ethereum em 2021, melhorando significativamente o tempo médio de inclusão de blocos.

No entanto, a implementação atual do EIP-1559 não é perfeita em vários aspetos:

  1. A fórmula tem algumas falhas: não visa 50% dos blocos, mas sim cerca de 50-53% dos blocos completos, dependendo da variância.
  2. Ajustes não são rápidos o suficiente em situações extremas.

A fórmula para blobs (EIP-4844) é projetada especificamente para resolver o primeiro problema, sendo no geral mais simples. No entanto, nem o EIP-1559 em si, nem o EIP-4844 tentaram resolver o segundo problema.

Além disso, existem outras fraquezas na precificação de recursos do Ethereum que não estão relacionadas com o EIP-1559, mas que podem ser resolvidas através de ajustes no EIP-1559. Um dos principais problemas é a diferença entre o caso médio e o pior caso: os preços dos recursos no Ethereum devem ser definidos para lidar com o pior caso, ou seja, o consumo total de gas de um bloco ocupa um recurso, mas o uso médio real está muito abaixo disso, levando à ineficiência.

O que é Gas multidimensional e como funciona?

A solução para esses problemas de ineficiência é o Gas multidimensional: definir preços e limites diferentes para diferentes recursos. Este conceito é tecnicamente independente do EIP-1559, mas a existência do EIP-1559 torna a implementação desta solução mais fácil. Sem o EIP-1559, a melhor forma de empacotar um bloco que contém restrições de vários recursos seria um complicado problema de mochila multidimensional. Com o EIP-1559, a maioria dos blocos não atinge a capacidade máxima em qualquer recurso, portanto, um algoritmo simples como "aceitar qualquer transação que pague taxas suficientes" é suficiente.

Atualmente, já temos Gas multidimensional para execução e blocos de dados; em princípio, podemos expandi-lo para mais dimensões: como calldata (dados de transação), leitura / escrita de estado e expansão do tamanho do estado.

A EIP-7706 introduz uma nova dimensão de gas, especificamente para calldata. Ao mesmo tempo, simplifica o mecanismo de gas multidimensional ao unificar três tipos de gas em uma única estrutura (estilo EIP-4844), resolvendo também as falhas matemáticas da EIP-1559. A EIP-7623 é uma solução mais precisa, que aborda os problemas de recursos nas situações médias e mais desfavoráveis, restringindo mais rigidamente o máximo de calldata, sem introduzir toda uma nova dimensão.

Vitalik sobre o possível futuro do Ethereum (6): The Splurge

Links de pesquisa existentes

  • FAQ do EIP-1559: FAQ do EIP-1559
  • Análise empírica sobre EIP-1559: Empirical analysis
  • Propostas de melhoria com ajustes rápidos: Proposed improvements
  • Parte sobre o mecanismo de taxa base no EIP-4844 FAQ: EIP-4844 FAQ
  • EIP-7706: EIP
Ver original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • 5
  • Compartilhar
Comentário
0/400
ShibaMillionairen'tvip
· 07-13 10:03
EVM evolução iterativa com certeza
Ver originalResponder0
CryptoWageSlavevip
· 07-10 21:15
Aguardando a grande atualização do EVM
Ver originalResponder0
DecentralizedEldervip
· 07-10 21:13
O futuro é brilhante.
Ver originalResponder0
OnChainDetectivevip
· 07-10 21:09
A otimização do EVM precisa ser acelerada.
Ver originalResponder0
ApeEscapeArtistvip
· 07-10 21:05
A atualização do EVM não pode ser adiada.
Ver originalResponder0
  • Marcar
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)