Análise da abstração de contas multi-chain: Perspectivas futuras da infraestrutura de encriptação
De 8 a 11 de julho de 2024, o maior evento anual de Ethereum na Europa - a Conferência da Comunidade Ethereum - será realizado em Bruxelas, Bélgica, com foco no desenvolvimento técnico e comunitário. Este ano, mais de 350 líderes de opinião da indústria de blockchain farão palestras, incluindo um desenvolvedor de blockchain que discutirá em profundidade o tema "Revelando o Futuro: Análise da Abstração de Contas Multichain".
Visão geral dos pontos da apresentação
A abstração de contas (AA) tem como núcleo a abstração de assinatura e a abstração de pagamento. A primeira permite que os usuários escolham qualquer mecanismo de verificação, enquanto a segunda oferece diversas opções de pagamento, melhorando juntos a experiência do usuário e a segurança.
Existem diferenças no design das funções de ponto de entrada na fase de validação e execução entre a ERC-4337 e a AA nativa. As restrições de validação de transações e os passos de execução de transações têm características distintas em diferentes implementações.
Ao implementar o ERC-4337 em cadeias compatíveis com EVM, as diferenças nos protocolos de design de Rollup e nas formas de cálculo de endereços resultaram em alguns detalhes de desenvolvimento sutis, mas importantes, ao serem implementados entre L1 e L2.
Abstração de contas - Visão geral
A essência da abstração de contas
A abstração de contas inclui principalmente dois pontos-chave:
Abstração de assinatura: os usuários podem escolher livremente o mecanismo de verificação de sua preferência, sem se limitar a algoritmos de assinatura digital específicos.
Abstração de pagamentos: os utilizadores podem utilizar várias opções de pagamento para transações, como pagar com ativos ERC-20 em vez de ativos nativos, ou ter transações patrocinadas por terceiros.
Essa flexibilidade proporciona aos usuários uma experiência mais segura e otimizada.
Introdução ao ERC-4337
O ERC-4337 visa resolver as limitações intrínsecas das contas de propriedade externa (EOA) do Ethereum, introduzindo métodos de gestão de contas e processamento de transações mais flexíveis:
Estrutura userOp: O usuário envia a estrutura userOp ao Bundler, que coleta várias userOp e as envia ao contrato EntryPoint chamando a função handleOps.
Contrato EntryPoint: semelhante a um sistema operativo que processa transações, as principais funções incluem verificar a autorização userOp, cobrar taxas e executar operações alvo.
Resumo da AA nativa
Na AA nativa, cada conta é um contrato, e o mecanismo de processamento de transações está diretamente incorporado no protocolo da blockchain. Diferentes redes de blockchain adotaram diferentes designs de AA:
abstração de contas ERC-4337: Ethereum, Arbitrum, Optimism e várias outras redes
Seguir a abstração de contas nativa do ERC-4337: StarkNet e zkSync Era
Abstração de contas nativas com design de privacidade: Aztec
Diferenças entre ERC-4337 e AA nativo
papel do sistema operativo
O sistema operacional AA precisa resolver problemas como o preço do Gas, a ordem das transações e a ativação da função EntryPoint. O ERC-4337 é concluído em colaboração com o Bundler e o contrato EntryPoint, enquanto no AA nativo, os usuários enviam diretamente as userOps para o operador/classificador do servidor oficial.
interface de contrato
As funções de ponto de entrada na fase de verificação do ERC-4337 e AA nativo são fixas, mas na fase de execução apenas o ponto de entrada do AA nativo é fixo.
limite de etapas de verificação
Para prevenir ataques DoS, diferentes implementações estabeleceram limitações para a verificação de transações. Por exemplo, o zkSync Era permite que a lógica do contrato acesse seus próprios slots de armazenamento e os slots de armazenamento de endereços específicos, mas proíbe o acesso a variáveis globais.
limites de etapas de execução
O zkSync requer a confirmação da existência de sinalizadores do sistema ao executar chamadas de sistema, enquanto o ERC-4337 e o StarkNet não têm restrições especiais na fase de execução.
tratamento de números aleatórios
As implementações tratam os números aleatórios de forma diferente, como o ERC-4337 que distingue entre valores de chave e valores aleatórios, enquanto o zkSync e o StarkNet garantem um aumento estrito.
primeira transação de implantação
O ERC-4337 inclui o campo initcode na estrutura userOp, enquanto o StarkNet e o zkSync exigem que os usuários enviem a primeira transação para o operador/classificador para implantar o contrato de conta.
Diferenças na implementação do L1 e L2 4337
diferença de protocolo
A L2 precisa fazer o upload de dados para a L1 para garantir a segurança e a liquidação, o que leva à necessidade de incluir custos adicionais de upload no Gas de pré-validação. Determinar com precisão esses custos é um grande desafio.
diferença de endereço
Existem diferenças nas formas de cálculo de endereços em diferentes cadeias, por exemplo, o método de codificação de endereços na função create do zkSync ERA é diferente do Ethereum e do OP, enquanto o StarkNet utiliza uma função hash única para o cálculo de endereços.
Além disso, os novos opcodes introduzidos no hard fork podem causar alterações no bytecode compilado, mesmo que o código Solidity seja o mesmo, podendo resultar em endereços de contratos de conta inconsistentes entre Ethereum e L2.
Conclusão
A abstração de contas é uma direção importante no desenvolvimento da infraestrutura de encriptação, com suas implementações em diferentes blockchains apresentando características distintas. Com a evolução contínua da tecnologia, esperamos ver mais inovações e otimizações, proporcionando aos usuários uma experiência de blockchain mais conveniente e segura.
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.
14 Curtidas
Recompensa
14
2
Compartilhar
Comentário
0/400
MeaninglessGwei
· 08-01 07:56
Mais uma vez a falar para o vazio, o que foi dito é como não ter sido dito.
abstração de contas análise: diferenças de implementação multi-chain e tendências de desenvolvimento futuro
Análise da abstração de contas multi-chain: Perspectivas futuras da infraestrutura de encriptação
De 8 a 11 de julho de 2024, o maior evento anual de Ethereum na Europa - a Conferência da Comunidade Ethereum - será realizado em Bruxelas, Bélgica, com foco no desenvolvimento técnico e comunitário. Este ano, mais de 350 líderes de opinião da indústria de blockchain farão palestras, incluindo um desenvolvedor de blockchain que discutirá em profundidade o tema "Revelando o Futuro: Análise da Abstração de Contas Multichain".
Visão geral dos pontos da apresentação
A abstração de contas (AA) tem como núcleo a abstração de assinatura e a abstração de pagamento. A primeira permite que os usuários escolham qualquer mecanismo de verificação, enquanto a segunda oferece diversas opções de pagamento, melhorando juntos a experiência do usuário e a segurança.
Existem diferenças no design das funções de ponto de entrada na fase de validação e execução entre a ERC-4337 e a AA nativa. As restrições de validação de transações e os passos de execução de transações têm características distintas em diferentes implementações.
Ao implementar o ERC-4337 em cadeias compatíveis com EVM, as diferenças nos protocolos de design de Rollup e nas formas de cálculo de endereços resultaram em alguns detalhes de desenvolvimento sutis, mas importantes, ao serem implementados entre L1 e L2.
Abstração de contas - Visão geral
A essência da abstração de contas
A abstração de contas inclui principalmente dois pontos-chave:
Essa flexibilidade proporciona aos usuários uma experiência mais segura e otimizada.
Introdução ao ERC-4337
O ERC-4337 visa resolver as limitações intrínsecas das contas de propriedade externa (EOA) do Ethereum, introduzindo métodos de gestão de contas e processamento de transações mais flexíveis:
Resumo da AA nativa
Na AA nativa, cada conta é um contrato, e o mecanismo de processamento de transações está diretamente incorporado no protocolo da blockchain. Diferentes redes de blockchain adotaram diferentes designs de AA:
Diferenças entre ERC-4337 e AA nativo
papel do sistema operativo
O sistema operacional AA precisa resolver problemas como o preço do Gas, a ordem das transações e a ativação da função EntryPoint. O ERC-4337 é concluído em colaboração com o Bundler e o contrato EntryPoint, enquanto no AA nativo, os usuários enviam diretamente as userOps para o operador/classificador do servidor oficial.
interface de contrato
As funções de ponto de entrada na fase de verificação do ERC-4337 e AA nativo são fixas, mas na fase de execução apenas o ponto de entrada do AA nativo é fixo.
limite de etapas de verificação
Para prevenir ataques DoS, diferentes implementações estabeleceram limitações para a verificação de transações. Por exemplo, o zkSync Era permite que a lógica do contrato acesse seus próprios slots de armazenamento e os slots de armazenamento de endereços específicos, mas proíbe o acesso a variáveis globais.
limites de etapas de execução
O zkSync requer a confirmação da existência de sinalizadores do sistema ao executar chamadas de sistema, enquanto o ERC-4337 e o StarkNet não têm restrições especiais na fase de execução.
tratamento de números aleatórios
As implementações tratam os números aleatórios de forma diferente, como o ERC-4337 que distingue entre valores de chave e valores aleatórios, enquanto o zkSync e o StarkNet garantem um aumento estrito.
primeira transação de implantação
O ERC-4337 inclui o campo initcode na estrutura userOp, enquanto o StarkNet e o zkSync exigem que os usuários enviem a primeira transação para o operador/classificador para implantar o contrato de conta.
Diferenças na implementação do L1 e L2 4337
diferença de protocolo
A L2 precisa fazer o upload de dados para a L1 para garantir a segurança e a liquidação, o que leva à necessidade de incluir custos adicionais de upload no Gas de pré-validação. Determinar com precisão esses custos é um grande desafio.
diferença de endereço
Existem diferenças nas formas de cálculo de endereços em diferentes cadeias, por exemplo, o método de codificação de endereços na função create do zkSync ERA é diferente do Ethereum e do OP, enquanto o StarkNet utiliza uma função hash única para o cálculo de endereços.
Além disso, os novos opcodes introduzidos no hard fork podem causar alterações no bytecode compilado, mesmo que o código Solidity seja o mesmo, podendo resultar em endereços de contratos de conta inconsistentes entre Ethereum e L2.
Conclusão
A abstração de contas é uma direção importante no desenvolvimento da infraestrutura de encriptação, com suas implementações em diferentes blockchains apresentando características distintas. Com a evolução contínua da tecnologia, esperamos ver mais inovações e otimizações, proporcionando aos usuários uma experiência de blockchain mais conveniente e segura.