Blockchain/Nível IX · Velocidade e espetáculo/9.2 O mercado justo/Lição 3
Ataques de ordenação e suas soluções
Front-running e ataques sanduíche, leilões em lote, mempools criptografadas
MateriaisUm explorador de blocos (por exemplo, Etherscan)Painel público de MEV (somente leitura)Uma planilha para rastrear o desvio em relação ao impacto no preçoUm explorador de blocos com capacidades de filtragem de transações
Curiosidade
- Por que ver uma transação antes de ela ser confirmada cria um incentivo econômico para reorganizar o bloco?
- Como um mecanismo de mercado pode ser tecnicamente sólido e, ainda assim, extrair valor de seus próprios usuários por meio de sequenciamento?
- Qual é a diferença exata entre um limite de deslizamento que limita as perdas e um que impede o ataque completamente?
Explorar
- No Ethereum, as transações pendentes aguardam em um mempool público, visível para todos os nós; o Solana não possui mempool público, mas quem retransmite ou lidera um bloco ainda consegue ver as transações pendentes. Quem controla a construção dos blocos pode inspecionar essa fila antes da finalização. Essa visibilidade cria uma condição de corrida em que velocidade e assimetria de informações determinam os resultados econômicos. A ordem de execução não é neutra; ela é a principal variável que os buscadores otimizam. Uma transação incluída primeiro captura a liquidez que, de outra forma, estaria disponível para participantes posteriores.
- O front-running envolve observar uma transação pendente e enviar a própria transação idêntica ou complementar com taxas de prioridade mais altas, garantindo sua inclusão antes da original. Se a transação observada mover o preço em favor do praticante de front-running, ele lucra com o delta. O back-running é o oposto: executa-se após uma mudança de estado conhecida, como uma atualização do oracle ou um gatilho de liquidação, para capturar valor que só se torna disponível no novo estado.
- O “sandwiching” explora a tolerância à flutuação de preços. Um manipulador compra um ativo imediatamente antes de uma grande transação da vítima, elevando seu preço. A vítima então executa sua transação por esse preço inflado. Imediatamente em seguida, o manipulador vende o ativo pelo preço mais alto criado pela compra da vítima. A vítima recebe menos tokens do que o esperado; o manipulador fica com a diferença. Isso é uma forma de arbitragem contra as próprias configurações de tolerância do usuário.
- P. Daian e colaboradores formalizaram essas dinâmicas em “Flash Boys 2.0” (arXiv 2019), cunhando o termo valor extraível por mineradores (MEV), posteriormente renomeado para valor máximo extraível. Eles demonstraram que o MEV não é uma anomalia, mas sim uma característica estrutural da execução sequencial e sem permissões. Grande parte do MEV se refere a arbitragem e liquidação; parte dele, como o método de “sandwiching”, é pago diretamente por traders comuns.
- A Flashbots (fundada em 2020) introduziu um sistema de retransmissão de pacotes privados (em 2021) e, após o Merge, leilões de construtores MEV-Boost (em 2022) na Ethereum. Isso transferiu a extração de MEV do mempool público para um leilão competitivo, tornando-a organizada, mas não inexistente. Na Solana, os pacotes Jito (a partir de 2022) criaram um mercado semelhante, no qual os validadores dão prioridade a transações agrupadas em troca de propinas. A infraestrutura mudou; o incentivo fundamental para ataques organizados permaneceu.
- Os limites de deslizamento estabelecem o máximo de perda por transação, mas não impedem que ocorram situações de “sanduíche”. Se um usuário definir o deslizamento em 1%, um comprador ainda pode causar essa situação, elevando seu preço até esse limite. A causa raiz é a execução sequencial e dependente das ordens, dentro de uma fila visível. Removê-la significa ou ocultar as ordens até que sejam confirmadas, ou tornar as ordens dentro de um bloco irrelevantes – ambos tópicos abordados em lições futuras.
- Nos mercados de negociação contínua, a velocidade de execução determina o resultado. Um operador que percebe uma mudança de preço e envia uma ordem antes dos outros consegue capturar um valor que, caso contrário, seria compartilhado ou perdido para os criadores de mercado. Essa dinâmica privilegia a infraestrutura em detrimento da análise: cabos de fibra ótica instalados perto dos servidores das bolsas, hardware localizado no mesmo local e redes de baixa latência tornam-se as principais vantagens competitivas. O resultado é um mercado em que pequenas diferenças de velocidade se traduzem em ganhos econômicos significativos, incentivando uma corrida armamentista tecnológica que beneficia apenas aqueles com capital para tais melhorias.
- Budish, Cramton e Shim propuseram uma alternativa em seu artigo publicado na Quarterly Journal of Economics em 2015: o leilão em lote frequente. Em vez de combinar as ordens continuamente à medida que chegam, o sistema coleta todas as ordens de compra e venda ao longo de um curto intervalo de tempo (eles sugeriram uma fração de segundo, como 100 milissegundos) e as resolve simultaneamente por um único preço uniforme. Esse design elimina a prioridade intrabloco, pois todas as ordens enviadas dentro desse período são executadas pelo mesmo preço de resolução. O primeiro milissegundo do intervalo não oferece vantagem alguma em relação ao último; a velocidade torna-se irrelevante para a execução, fazendo com que a competição volte a se concentrar nas informações e na avaliação.
- Aplicado aos mercados de tokens em redes blockchain, esse princípio neutraliza dois tipos comuns de ataques: sniping e sandwiching. Em um mempool padrão, um bot pode monitorar transações pendentes, detectar uma grande troca (swap) e inserir sua própria transação antes e depois dela para manipular o preço. Na liquidação em lote, todo o fluxo de ordens do bloco é tratado como um único conjunto de restrições. O protocolo determina um preço que maximize o volume ou a utilidade de todas as ordens simultaneamente. Um ataque sandwich falha porque o atacante não pode executar sua ordem separadamente da vítima; ambos fazem parte da mesma solução de liquidação.
- O Protocolo CoW, lançado em 2021 na Ethereum, implementa isso por meio de leilões em lote. Os usuários enviam intenções de ordem assinadas para uma rede de solucionadores (solvers), em vez de diretamente para uma exchange. Os solvers competem para executar essas ordens dentro de um bloco, e o protocolo exige que as transações do mesmo par e direção, em uma solução vencedora, sejam liquidadas por um único preço. A Penumbra, cuja mainnet foi lançada em 2024 (sua exchange foi ativada em fases posteriores), agrupa as swaps por bloco. Ambos demonstram que a liquidação em lote funciona na prática, embora difiram em suas arquiteturas específicas de solvers e garantias de privacidade.
- O principal custo desse design é a latência. Os preços são atualizados apenas quando um novo lote é processado, e não de forma contínua. Se as condições do mercado mudarem drasticamente durante o intervalo entre os lotes, o preço de processamento pode ficar atrás dos preços à vista em tempo real, criando ineficiências temporárias. Além disso, embora a prioridade dentro de um bloco desapareça, a prioridade entre blocos permanece: chegar a um bloco anterior ainda pode trazer vantagens se houver mudança na liquidez entre os blocos. Trata-se de uma forma residual de competição por velocidade, mas ela opera em uma escala de tempo mais lenta (intervalos entre blocos, e não milissegundos), reduzindo a corrida armamentista em termos de infraestrutura e tornando a participação mais acessível para traders não institucionais.
- Verifique isso encontrando uma transação de liquidação do Protocolo CoW no Etherscan ou no CoW Explorer: uma transação liquida as negociações de vários usuários, e as negociações do mesmo par e direção dentro de uma solução são executadas ao mesmo preço efetivo. A uniformidade dos preços entre ordens diferentes dentro do mesmo lote é a assinatura visível do algoritmo de liquidação em funcionamento.
- Em um mempool público, todas as transações pendentes ficam visíveis para todos os nós imediatamente. Um usuário pode ler seu conteúdo, simular o resultado e enviar sua própria transação concorrente com taxas de gás mais altas para se antecipar. Esse comportamento de “front-running” extrai valor de outros usuários sem o consentimento deles. A visibilidade das ordens não confirmadas cria uma condição competitiva inerente, na qual vantagens de velocidade se traduzem diretamente em ganhos financeiros.
- Os esquemas de compromisso-revelação resolvem isso dividindo o envio em duas fases. Primeiro, o usuário transmite um hash criptográfico da transação que pretende realizar. Depois, ele revela a transação real. Ninguém pode ver o que está sendo comprometido até a fase de revelação. Desde que a ordem de execução seja definida no momento do compromisso, isso impede o front-running, pois ninguém pode conhecer o conteúdo da ordem enquanto ela aguarda. O custo é um segundo passo: os usuários precisam voltar para revelar, e o protocolo deve decidir o que acontece com os compromissos que nunca são revelados.
- Os mempools criptografados por limite adotam uma abordagem diferente. As transações são criptografadas com uma chave pública cuja chave de descriptografia é dividida entre um comitê (Shutter chama seus membros de “Keypers”). Nenhum membro possui a chave de descriptografia completa; somente quando um número mínimo de nós cooperam é que a transação pode ser descriptografada. A ordem é definida antes que qualquer parte veja o conteúdo, eliminando assim a possibilidade de manipulação. A confiança passa para esse comitê: se membros suficientes conspirarem, eles poderão descriptografar antecipadamente.
- A Shutter Network implementou isso na Gnosis Chain a partir de 2024. Ela utiliza um comitê para gerenciar as ações-chave, permitindo que os usuários enviem transações criptografadas que são decifradas somente após sua posição no bloco ser determinada. Da mesma forma, o Flashbots Protect oferece canais privados de fluxo de ordens, nos quais as transações contornam completamente o mempool público e são enviadas em particular aos construtores de blocos. Ambos os métodos escondem os dados das transações dos pesquisadores, mas introduzem novas dependências.
- Canais privados transferem a confiança do consenso descentralizado para os criadores de blocos ou comitês. Se um criador se tornar malicioso ou for comprometido, ele pode inspecionar as ordens antes de incluí-las no bloco. Os esquemas de limite reduzem esse risco ao exigir que várias partes independentes colaborem, mas a governança do comitê e o gerenciamento das chaves tornam-se pontos críticos de falha. Os usuários devem verificar se nenhuma entidade controla um número suficiente de chaves para decifrar transações unilateralmente.
- Os trade-offs são claros: os mempools criptografados aumentam a latência devido ao overhead de criptografia/descriptografia e exigem confiança em comitês ou desenvolvedores. Os mempools públicos permanecem transparentes, mas são vulneráveis à extração de MEV. Para um mercado de tokens, adotar esses mecanismos significa aceitar uma descoberta de preços mais lenta e infraestrutura complexa em troca de proteção contra estratégias de negociação predatórias. A escolha depende de se a equidade na execução supera o custo da complexidade adicional.
Parte IOrdem dos ataques: front-running, sanduíches e MEV
Parte IILeilões em lote e compensação uniforme
Parte IIIMempools criptografados e revelação de commits
Fatos-chave
- MEV, valor extrativável mínimo (mais tarde “máximo”), foi denominado por Daian et al. em 2019.
- O Flashbots foi lançado em 2020 para transferir a extração de MEV para leilões privados na Ethereum.
- Os pacotes Jito na Solana permitem que os validadores priorizem transações com gorjetas a partir de 2022.
- Os ataques de sanduíche se beneficiam da tolerância a desvios definida pela transação da vítima.
- Os limites de deslizamento limitam as perdas financeiras, mas não impedem a execução de operações tipo sanduíche.
- A causa raiz dos ataques de ordenação é a execução sequencial contra uma fila de transações visível.
- Budish, Cramton e Shim publicaram sua proposta de leilões em lote frequentes na Quarterly Journal of Economics em 2015.
- O CoW Protocol tem utilizado leilões em lote na Ethereum desde seu lançamento, em 2021.
- Penumbra, lançada em 2024, agrupa as trocas por bloco.
- A liquidação em lote executa todas as ordens dentro de um intervalo por um único preço uniforme, eliminando a prioridade intrabloco.
- Esse design neutraliza ataques sandwich ao incluir as ordens do atacante e da vítima na mesma solução de liquidação.
- O trade-off é atualizações de preços mais lentas em comparação com mercados contínuos, embora as vantagens de velocidade entre blocos continuem existindo.
- Os pools de membros públicos expõem todas as transações pendentes aos buscadores que praticam front-running.
- Esquemas de revelação por commit separam a submissão do hash da revelação da transação para ocultar o conteúdo.
- Os mempools criptografados por threshold utilizam partes da chave mantidas por um comitê para a descriptografia após a fixação do pedido.
- A Shutter Network foi lançada na Gnosis Chain em 2024 usando criptografia de limiar.
- Canais privados de fluxo de ordens contornam os mempools públicos, mas concentram a confiança nos construtores de blocos.
- Mempools criptografados adicionam latência e pressupostos de confiança em comparação com cadeias públicas.
Exercício nove, seis, três, um
9ReunirListe 9 exemplos ou tipos específicos de extração de MEV observados em Ethereum ou Solana entre 2023 e 2024. Indique qual camada (construtora, buscadora, usuário) capturou o valor.
6AgruparAgrupe os 9 em 6 de acordo com quem arca com a perda.
3DestilarReduza os 6 para 3 mecanismos pelos quais uma vantagem de ordenação se transforma em lucro.
1CristalizarEscreva 1 frase sobre se o MEV é uma falha no código do contrato ou na ordenação das transações, e por quê.
Verificação de fatos
Datas, números e afirmações verificados com as fontes publicadas listadas abaixo.
- P. Daian et al., 'Flash Boys 2.0' (IEEE S&P 2020, arXiv 2019)
- Flashbots documentation on private transaction relays
- Jito documentation on bundles and tips
- E. Budish, P. Cramton & J. Shim, 'The High-Frequency Trading Arms Race: Frequent Batch Auctions as a Market Design Response', Quarterly Journal of Economics (2015)
- CoW Protocol Documentation, 'Batch Auctions'
- Penumbra protocol specification: DEX (batch swaps)
- Shutter Network documentation
- Flashbots Protect documentation
- S. Yang et al., 'SoK: MEV Countermeasures: Theory and Practice' (2022)