Esta é uma tentativa séria de resolver um problema real.

Meu feedback

  • Precisamos de explicar explicitamente o possível conluio entre as partes no protocolo de embaralhamento. Se forem apostadas, a situação melhora, mas o problema permanece.
  • Plain Alex (afaict) tem duas camadas de MEV, em qual pedaço você entra e onde você está nesse pedaço. Se você puder solicitar pedaços de maneira justa, poderá solicitar txs de maneira justa, não?
  • Seria altamente desejável torná-lo não interativo (o N em SNARKs), com menos partes móveis e evitando problemas de conluio.
  • O uso ingênuo de hashes tx sob encomenda não funciona, mas pode haver um uso melhor de funções hash, talvez várias rodadas (como um kdf) de hash de todo o bloco para tornar caro o tempo para o minerador iterar através de muitas versões de bloco.

Você está claramente apaixonado por isso, OP. Espero que a comunidade convirja para uma solução sólida.



2 curtidas

Olá,
Acho a ideia ótima, mas não tenho certeza se uma solução muito mais simples poderia funcionar. Já comecei um tópico
MEV é uma solução simples, mas basicamente minha intuição é que é um problema de preço:

  1. Algo interessante aconteceu fora do Ethereum. As pessoas reagem. Qual é o preço justo? No momento, vocês podem simplesmente superar os lances uns dos outros através do gasPrice
  2. Alguém postou uma transação “ruim”. As pessoas reagem. Qual é o preço justo? Deve ser o mesmo mecanismo de 1. No momento, temos uma solução confusa, flashbots e companhia.

Na minha opinião, não existem mais casos. MEV não é tão ruim por si só. Muitas vezes apenas corrige o mercado. Acho que precisamos encontrar uma solução que funcione de alguma forma transparente.
No final das contas, as exchanges DEX deveriam apenas proteger automaticamente contra MEV ou transações ruins. Por exemplo, avise um usuário que sua transação pode ser imprensada.

Também apresentei minha proposta de solução sobre serviços on-chain mais regulamentados, utilizáveis ​​e transparentes para usuários e aplicativos, ao mesmo tempo em que soluciono MEV e mantenho a privacidade como resultado de minha pesquisa do setor.

Problemas que minha proposta de pesquisa deseja resolver:

  1. Provedores de serviços on-chain são tão poderosos que têm privilégios irrestritos para visualizar, ordenar e censurar transações arbitrariamente para MEV. Os usuários e aplicativos não podiam regulá-los para ter um serviço on-chain confiável, estável e protegido.
  2. PBS regulamentou o MEV para mitigar a centralização de consenso e a censura de transações, mas não os resolveu e impediu o MEV de raiz.
  3. Técnicas de preservação de privacidade poderia proteger totalmente a privacidade das transações e evitar MEV para os usuários sem revelar qualquer conteúdo específico em público. Mas alguns usuários e aplicativos como o AMM precisam revelar algumas informações publicamente, como os últimos estados públicos do pool de liquidez, para usabilidade e transparência, ou têm outros requisitos especiais para serviços on-chain, em particular.

Para resolver os problemas acima, os objetivos da minha proposta de pesquisa são:

  1. Usuários pode obter um melhor serviço onchain, incluindo:

    1. preservação da privacidade para prevenção de MEV e resistência à censura
    2. diferentes opções de nível de proteção de privacidade e custos mais baixos de proteção de privacidade
    3. aceitação de transação mais rápida e garantia onchain
  2. Aplicativos pode definir requisitos onchain mais personalizados para atender às suas necessidades, incluindo:

    1. manter a usabilidade pública e a transparência, protegendo ao mesmo tempo a privacidade pessoal
    2. determinar a ordem de processamento das transações enviadas a eles
    3. outros requisitos onchain especiais e personalizados

Para atingir estes objetivos, as principais contribuições das minhas propostas são:

  1. Candidatura técnica de preservação de privacidade para prevenir totalmente o MEV e resistir à censura, e combiná-lo com o PBS para permitir mais opções de nível de privacidade e manter a usabilidade e a transparência
  2. melhorando PBS atribuindo trabalho de consenso aos proponentes para chegar a um consenso primeiro, antes da construção do bloco, para permitir mais opções de nível de privacidade e aceitação de transações mais rápida e garantia on-chain
  3. projetando transação personalizável e contrato inteligente que permite que usuários e aplicativos estabeleçam requisitos adicionais para provedores de serviços on-chain atenderem às suas necessidades on-chain personalizadas, como autodeterminar a ordem de processamento das transações enviadas a eles

O processo da minha solução proposta é o seguinte:

  1. Usuários escolha o nível de privacidade para suas transações. Eles podem optar por criptografar as transações antes de serem aceitas pelos proponentes por censura e resistência ao MEV, e descriptografar após serem confirmadas por uma taxa de gás mais baixa ao serem processadas pelo construtor. Eles também podem escolher totalmente privado ou totalmente aberto. Em seguida, eles enviam suas transações aos proponentes.
  2. As transações serão transmitidas entre proponentesque validam e aceitam transações que acham que deveriam ser anexadas ao novo bloco. As transações aceitas pela maioria após consenso serão enviadas ao construtor, e os usuários poderão ser informados que suas transações serão incluídas no novo bloco ou não de forma definitiva.
  3. Construtor irá descriptografar algumas transações se for permitido reduzir a carga de trabalho durante a construção do bloco. Eles só podem trabalhar nas transações determinadas pelos proponentes. Caso contrário, o bloco construído será rejeitado e inválido.
  4. Construtor verificará e processará as transações propostas de acordo com os requisitos definidos pelos usuários em suas transações e aplicações em seus contratos inteligentes. Em seguida, os resultados e transações serão anexados ao novo bloco, e o novo bloco será enviado aos armazenistas.
  5. Armazenistas verificar se atende aos requisitos dos usuários, aplicativos e proponentes e armazená-lo no blockchain para fornecer disponibilidade de dados. Qualquer pessoa pode solicitar os estados do blockchain aos armazenistas com a prova de validade.



1 Curtir

Por que não uma mudança simples como:

  1. SORTED_TXS = a lista de transações, classificadas por (nonce, bytes)
  2. SORTED_TXS_HASH = hash(SORTED_TX)
  3. ORDERED_SIGNERS = SORTED_TXS.map(tx.signer).sortedBy(hash((signatário, SORTED_TXS_HASH))
  4. ORDERED_TXS = ORDERED_SIGNERS.map(SORTED_TXS.popFirst(tx.signer == signatário))

O protocolo pode exigir que a lista de transações seja igual à ordem ORDERED_TXS.

Fontesethresear

By victor

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *