Também introduzimos o conceito de “Jogo de Agrupamento”. Este jogo será o foco principal da segunda parte. Dado um conjunto de transações, um agrupador pode escolher quais transações incluir em seu conjunto. Isso cria uma assimetria de informação entre os agrupadores e o usuário, pois o usuário não sabe quantas transações serão incluídas no conjunto. Isso leva a um jogo de soma zero em que o usuário está em clara desvantagem.
Esta pesquisa tem como objetivo explorar métodos para melhorar a UX, garantindo que os utilizadores não precisem de pagar a mais para serem incluídos no próximo pacote. Em vez disso, os utilizadores devem ser capazes de pagar uma taxa com base na procura real de mercado para a inclusão.
No Pacotes Semanais % Multi-UsuárioOp 1métrica, observamos a percentagem de agrupadores que criam pacotes que incluem múltiplos userops. Desde o início de 2024 até junho de 2024, esta percentagem não excedeu 6,6%. Estes dados tornam-se ainda mais interessantes quando se considera que muitos agrupadores executam os seus próprios patrocinadores, entidades que patrocinam transações em nome dos utilizadores. Notavelmente, os dois maiores agrupadores que também atuam como patrocinadores, em termos de operações de utilizador publicadas,patrocinado 97% 1das operações do usuário usando seus serviços. O pagador paga por algumas partes da operação do usuário e o restante é pago pelos dapps ou outrosentidade 1.
A pergunta que surge é por que os pagadores, dApps, etc., estão a pagar pelas operações do utilizador. O utilizador irá pagar-lhes de volta no futuro? Não podemos ter a certeza do que irá acontecer, mas o meu palpite pessoal é que atualmente, os dApps estão a cobrir as taxas para aumentar a utilização e a adoção das suas apps. Uma vez que a adoção seja elevada, é provável que os utilizadores tenham de pagar pelas transações. Vale a pena mencionar que, para o utilizador pagar por uma operação do utilizador com o modelo atual, não é a melhor opção, uma vez que uma operação básica ERC-4337 custa ~42.000 gas, enquanto uma transação normal custa ~21.000 gas.
Ops, ou com um serviço RPC que não agrupa, semelhante a serviços como Alchemy ou Infura, que recebem e propagam transações para outros agrupadores.

Uma vez que o mempool esteja ativo, o fluxo de transação será semelhante ao diagrama abaixo, que é semelhante ao fluxo de transação atual. Um mempool aumenta a resistência à censura para os usuários porque, ao contrário do modelo RPC, reduz as chances de uma transação ser excluída. No entanto, mesmo com um mempool, ainda há o risco de um provedor RPC não encaminhar a transação, mas o modelo de mempool é particularmente benéfico para usuários que preferem executar seus próprios nós, pois isso mitiga esse risco.


Embora os agrupadores tenham o potencial de atuar como construtores, preferimos manter os papéis separados devido ao cenário competitivo. Os agrupadores enfrentariam uma competição significativa dos construtores já existentes e sofisticados, tornando a construção menos atraente e potencialmente menos lucrativa. Como resultado, os agrupadores são mais incentivados a colaborar com os construtores estabelecidos em vez de construir de forma independente e correr o risco de perdas.
Combinar os papéis de agrupador e construtor numa única entidade implica alterações significativas no sistema atual. Os agrupadores teriam de competir com os existentes construtores sofisticados, ou alternativamente, os construtores atuais precisarão integrar horizontalmente e assumir também o papel de agrupador. O último cenário, embora mais plausível, levanta preocupações sobre a concentração de mercado e o potencial impacto negativo na resistência à censura.
Usar uma mempool, na qual as operações do utilizador são públicas para diferentes bundlers aumenta a concorrência, no caso de abstração de conta não nativa, é necessária uma separação entre bundler e construtor, no caso de abstração de conta nativa, a separação pode não ser necessária, uma vez que o construtor pode interpretar as operações do utilizador como transações normais.

Isso poderia levar ao seguinte resultado: em um ambiente competitivo, os empacotadores baixarão seus preços para serem selecionados pelos usuários, que, por sua vez, buscarão o menor preço para a inclusão de sua operação de usuário em um pacote. Esta concorrência criará um sistema em que o empacotador que oferece o melhor preço será selecionado com mais frequência do que o empacotador que está apenas tentando maximizar seu lucro criando pacotes menores. Separar os papéis do empacotador e do construtor também pode aumentar a resistência à censura. Um bundler pode criar um pacote de operações de usuário aggreGated e enviá-lo para diferentes construtores. Se o pacote incluir operações que podem ser censuradas, um construtor que não censura pode aceitá-lo e prosseguir com a construção. No entanto, vale a pena notar que, do ponto de vista do usuário, essa configuração pode aumentar os custos, já que a introdução de um bundler adiciona uma parte adicional, levando a despesas mais altas.


Em cenários onde o cálculo na L2 é significativamente mais barato do que o custo de calldata para disponibilidade de dados (DA) na mainchain, o uso da agregação de assinaturas revela-se altamente benéfico. Por exemplo, o emparelhamento para BLS na mainnet é facilitado pelo 0x08 1pré-compilar a partir do EVM, o que custa aproximadamente ~45000k gás. Consequentemente, usar BLS na L1 é mais caro do que transações tradicionais.
As técnicas de compressão em L2s já estão a ser utilizadas, como a compressão de 0 bytes, que reduz o custo de cerca de 188 bytes para cerca de 154 bytes para uma transferência ERC20. Com a agregação de assinaturas, a eficiência de compressão pode ser ainda mais aprimorada usando uma única assinatura, reduzindo o tamanho para cerca de 128 bytes.
Em Layer 2s, a agregação de assinaturas é uma inovação crucial que melhora tanto a eficiência das transações como a rentabilidade. Ao combinar múltiplas assinaturas numa única, a carga global de dados é significativamente reduzida, o que diminui os custos associados à disponibilidade de dados na Camada 1. Este avanço não só melhora a escalabilidade, como também reduz os custos das transações para os utilizadores, tornando o sistema mais económico e eficiente.
De uma pesquisa anterior sobre ”Compreender a economia de rollup a partir dos primeiros princípiosPodemos esboçar os custos que um utilizador enfrenta ao usar serviços L2 da seguinte forma: "
Quando um usuário interage com uma camada 2, ele tem alguns custos que podemos definir da seguinte forma:
Considerando o agrupador, os custos e lucros são estendidos da seguinte forma:
Vamos redefinir nosso modelo introduzindo o operador. O usuário faz lances ao agrupador para inclusão no próximo bloco L2 ao licitar um valor V. O usuário tem como objetivo minimizar a taxa de publicação de dados, enquanto o agrupador procura maximizar sua taxa ou obter um excedente dos custos de interação L2 e taxas do usuário.
Os custos associados à criação de um pacote e à publicação na cadeia podem ser divididos em duas partes:
Função de custo on-chain: Um agrupador emite o agrupamento B quando a taxa base é r, incorrendo em um custo:

Função de custo aggreGated: O bundler tem uma função de custo para agregar n transações em um único pacote B com taxa base de r:

com S′F, que contém a publicação e verificação da assinatura agregada única na cadeia.
Se o usuário puder obter uma estimativa confiável para n, eles podem calcular seu custo usando a função estimateGas, disponível na maioria das soluções L2. Ter uma boa estimativa pode fazer com que o usuário faça lances de acordo, sem precisar superestimar seu lance para inclusão. Essa função determina o custo necessário para garantir a inclusão. Ter uma boa estimativa para n e a função estimateGas pode evitar que o usuário pague por um preVerificationGas mais alto. Na próxima seção, exploraremos vários mecanismos para garantir uma estimativa confiável de n.

Proposta do observador691×642 47,4 KB
Nesta configuração, diferentes redes L2 operam de forma independente, mas compartilham um sequenciador comum. Em intervalos regulares, essas redes verificam o número de operações do usuário (userops) na mempool compartilhada. O sequenciador compartilhado ajuda a sincronizar e agregar dados dessas redes. Uma vez que elas chegam a um acordo, as informações são comunicadas ao usuário, permitindo que eles façam lances com base no número de userops presentes.
Esta abordagem oferece várias vantagens. Em primeiro lugar, fornece um método descentralizado para determinar o número de userops na mempool, aumentando a resistência à colusão. Em segundo lugar, elimina o único ponto de falha que poderia ocorrer se apenas um sistema estivesse gerenciando a comunicação entre o usuário e a mempool. Em terceiro lugar, o sequenciador compartilhado garante consistência e reduz discrepâncias entre as diferentes soluções L2.
Ao aproveitar o sequenciador compartilhado, este método garante um sistema robusto e confiável para estimar e comunicar o estado do mempool aos usuários, melhorando assim a eficiência e segurança geral do processo.

Shared Sequencer764×785 66.3 KB
Nas duas abordagens explicadas ao usar um oráculo, há um vetor de ataque potencial onde um adversário poderia gerar múltiplas operações de usuário na mempool, sabendo que elas irão reverter se agregadas juntas. Como resultado, o oráculo vê que há
n
transações e exige um grande pacote, mas o agrupador não pode criar o pacote. Este problema pode parar a rede por muitos blocos.
A ideia principal é que a Camada 2 lida com a coleta de userops e, em seguida, terceiriza a agregação para outra entidade. A Camada 2 paga pela agregação e cobra do usuário uma taxa pelo serviço.
Existem duas opções diferentes:
- Taxa fixa 671×702 22,1 KB- Pedidos de Reembolso: Se a Camada 2 quiser melhorar a sua credibilidade, poderia permitir reembolsos automáticos. Isso envolveria um mecanismo que verifica quantas userops são publicadas num único bloco e se as transações poderiam ter sido agregadas. Se uma userop que poderia ter sido agregada não o foi e nenhum reembolso automático foi emitido, o utilizador pode solicitar um reembolso. Neste cenário, a Camada 2 poderia apostar alguns ativos e, se o reembolso não for fornecido, o utilizador poderia impor o reembolso, garantindo a justiça e a responsabilidade.
- Pedido de reembolso 671×702 22,8 KBNesses dois posts diferentes, destacamos as dificuldades que os usuários enfrentam ao fazer lances para serem incluídos no próximo pacote. Na primeira parte, apresentamos o modelo ERC-4337, explicando os custos que um empacotador incorre ao postar um pacote na cadeia e os custos associados fora da cadeia. Também destacamos os mercados de taxas para empacotadores e começamos a discutir o problema de formatar o empacotador. Os usuários enfrentam dificuldades ao fazer lances devido à falta de conhecimento sobre o número de transações presentes no mempool no momento do empacotamento.
Na segunda parte, explicamos ERC-4337 e RIP-7560. Em seguida, discutimos por que a agregação de assinatura é mais provável de ocorrer em soluções de Camada 2 do que diretamente na Camada 1. Demonstramos como as soluções de Camada 2 podem abordar o conhecimento assimétrico que os usuários experimentam de diferentes maneiras. A primeira é usar oráculos para sinalizar ao usuário quantas transações estão presentes no mempool, com essa abordagem os usuários sabem quanto devem dar lances e podem forçar o bundler a fazer pacotes maiores. A terceira abordagem, que é a mais simples, é que o L2 atua como um empacotador e terceiriza a agregação para terceiros e permite que os usuários paguem uma taxa por isso.
Aviso de Responsabilidade: As opiniões expressas neste artigo são exclusivamente do autor e não constituem qualquer conselho de investimento.
As traduções do artigo para outros idiomas são feitas pela equipe Gate Learn. Salvo indicação em contrário, é proibido copiar, distribuir ou plagiar os artigos traduzidos.





