Ataques de "gasto duplo" que até o Homem-Aranha não consegue evitar? Botanix tece uma rede antifurto com a cadeia de aranha.

Título original: Como a Botanix se protege contra gastos duplos

Autor original: botanixlabs

Fonte original:

Compilado por: Daisy, Mars Finance

Como o Botanix previne ataques de double spending

Um dos principais desafios enfrentados pelas sidechains do Bitcoin é manter um equilíbrio de entradas e saídas entre on-chain e a rede Bitcoin. Este princípio aplica-se tanto às operações de depósito (depósito âncora) como às operações de levantamento (levantamento de âncora). Sem uma gestão eficaz, o sistema cairá rapidamente num desequilíbrio patrimonial devido a transações de gastos duplos e entradas conflituosas. Botanix elegantemente resolve esse problema com Spiderchain, uma cadeia federada de prova de participação projetada especificamente para Bitcoin com base em uma arquitetura de carteira multisig rotativa.

Este desenho conduz naturalmente a dois tipos de transações: depósito de âncora e levantamento de âncora. Os depósitos ancorados funcionam enviando BTC para a carteira multisig atual enquanto cunham o ativo de representação BTC correspondente no Botanix. Para retirada de peg, depois que o usuário queimar os ativos de representação BTC no Botanix, a Spiderchain retornará o BTC real com UTXO multi-assinatura como entrada. No Botanix, tais transações de Bitcoin são verificadas pelo atual coordenador rotativo do Spiderchain, multi-assinatura. Outro design importante é que o Botanix vincula cada transação à anterior e incorpora todos os dados de entrada "conflitantes", garantindo que qualquer tentativa de repetição ou repetição seja automaticamente rejeitada pelo mecanismo de consenso do Bitcoin.

Neste contexto, o que significa "multisig"?

O núcleo aqui é "multisig" (assinatura múltipla). A maioria dos usuários de web3 deve estar familiarizada com este termo - geralmente refere-se à capacidade de vários usuários assinarem juntos uma transação de carteira. Mas no contexto da Botanix, "multisig" (abreviação de multi-assinatura) refere-se especificamente a endereços de Bitcoin que exigem autorização conjunta de várias partes (geralmente utilizando o modelo de chaves n-of-k) para executar uma transação.

Cada ciclo da Spiderchain da Botanix cria uma nova "3 em 2+" carteira de múltiplas assinaturas de Bitcoin (planejada para ser ajustada para o modo 12/16 no futuro, mantendo ainda uma proporção superior a 2/3), controlada em conjunto pelos nós coordenadores. Isso significa que qualquer transação iniciada a partir desse endereço (por exemplo, retirada ancorada) requer a assinatura de pelo menos 67% dos coordenadores designados. Essas carteiras de múltiplas assinaturas são atualizadas a cada rotação de bloco de Bitcoin, construindo assim uma estrutura em cadeia para a custódia de depósitos e retiradas de BTC.

Portanto, aqui, a "multisig" não é apenas uma carteira compartilhada - é também a base do design de minimização de confiança da Botanix, bem como a ponte entre o Bitcoin e suas sidechains. Este mecanismo não só previne a possibilidade de retirada unilateral de BTC, como também garante a segurança do processo de ancoragem através de um grupo rotativo de signatários verificáveis. Uma função que parece simples e até comum em outras chains, desempenha um papel crucial no ecossistema Bitcoin.

Análise do mecanismo de "entrada de conflito"

O princípio central deste mecanismo é: a saída da transação de ancoragem anterior foi gasta na transação atual. De acordo com o modelo UTXO do Bitcoin, uma vez que um UTXO é incluído como entrada em uma transação confirmada, não pode ser utilizado novamente. O Botanix utiliza exatamente essa característica - usa a saída gasta da ancoragem anterior como entrada para a nova transação de ancoragem, qualquer tentativa de transmitir um comportamento de ancoragem duplicada violará a regra de double spending do Bitcoin e será rejeitada.

Se o coordenador ou o usuário tentar reutilizar o mesmo UTXO para ancorar a retirada, a transação gerada conterá "entrada em conflito" (ou seja, duas transações tentam gastar o mesmo UTXO) e, portanto, será inválida. Em outras palavras, UTXOs de múltiplas assinaturas que já foram gastos não podem ser reutilizados, e o sistema detectará o conflito e recusará a transação duplicada.

Exemplo específico:

Digamos que o TXn é a última transação de Bitcoin que foi indexada, e sua saída contém troco não gasto UTXO Un (para financiar a próxima carteira multisig). Quando a próxima retirada de âncora ocorrer, o coordenador do Botanix construirá uma transação TXn₊₁ com Un como uma das entradas. Neste ponto, Un foi consumido por TXn₊₁. Se qualquer uma das partes (maliciosa ou não) tentar retransmitir uma cópia de TXn₊₁, ou construir outra transação que custe Un, a rede reconhecerá que Un foi gasto pelo primeiro TXn₊₁ e tratará as cópias subsequentes como gastos duplos. Não só essas transações duplicadas não podem ser empacotadas on-chain, mas também não podem ser propagadas de forma confiável entre nós porque o mecanismo de consenso do Bitcoin proíbe gastos secundários do mesmo UTXO. Essencialmente, o design de usar o UTXO gasto como entrada torna todas as transações de retirada de âncora naturalmente anti-replay e garante mecanicamente o princípio de uso único.

Este mecanismo é semelhante à cadeia de transações do Bitcoin: cada nova transação gasta explicitamente a saída da transação anterior. Transações idênticas não podem ser confirmadas duas vezes, e qualquer tentativa de reutilizar a mesma entrada em uma nova transação será considerada inválida. Em resumo, o Spiderchain força a garantia da unicidade de cada ancoragem retirada através do modelo UTXO.

Demonstração da lógica da cadeia de transações:

UTXO de múltiplas assinaturas anterior (M1) → [transação de ancoragem] → endereço do usuário (quantia) + novo UTXO de múltiplas assinaturas (M2)

No próximo bloco, o M2 torna-se "UTXO retirado da ancoragem anterior", sendo consumido pela transação de ancoragem seguinte.

Qualquer transação de retirada de ancoragem repetida que tente gastar novamente o M2 falhará porque o M2 já foi gasto.

Com este design, duas transações de ancoragem não podem gastar a mesma saída de bitcoin - porque cada transação deve incluir a saída mais recente como entrada. Os nós do bitcoin rejeitarão automaticamente qualquer tentativa de gasto duplo dessa entrada, e quaisquer transações de repetição acionadas acidentalmente ou maliciosamente serão imediatamente invalidadas.

Prevenir ataques de repetição acidentais ou maliciosos

O design do mecanismo de entrada de conflito pode prevenir tanto comportamentos acidentais quanto intencionais de ancoragem e retirada duplicadas. Do ponto de vista acidental, os usuários ou nós não podem criar duas transações de retirada idênticas, pois a segunda tentativa entraria em conflito com a entrada já gasta. Do ponto de vista de um ataque malicioso, um coordenador ou um atacante externo não pode falsificar uma segunda transação de ancoragem e retirada para os mesmos fundos. Se um atacante tentar gastar duas vezes, terá que criar uma outra transação de Bitcoin gastando o mesmo UTXO; mas como a transação de ancoragem e retirada legítima anterior já consumiu esse UTXO, qualquer transação secundária que use a mesma entrada seria considerada um gasto duplo e se tornaria inválida.

Além disso, o mecanismo de governança da Botanix impõe penalidades a qualquer coordenador que tente assinar ou transmitir uma transação de takeout ancorada em conflitos. As regras do sistema listam explicitamente "multisig impróprio no Spiderchain - incluindo assinar a âncora errada para retirar transações ou participar de comportamento de gasto duplo" como uma operação ilegal que pode confiscar a garantia. Uma vez que o código de ponte de cadeia cruzada constrói a transação completa (entrada, saída, montante) através do determinismo de consenso on-chain, o operador não pode adulterar o conteúdo de entrada sem permissão. Portanto, se o coordenador assinar deliberadamente uma transação que entre em conflito com outras transações (como a tentativa de um gasto duplo), o nó correrá o risco de ter suas garantias cortadas.

Desta forma, o Botanix baseia-se no mecanismo de consenso do Bitcoin (rejeitando automaticamente transações de duplo gasto) e, através das suas próprias regras de mineração e confisco, garante em dupla a unicidade da restrição na retirada de ativos.

Análise passo a passo do fluxo de operação

Após uma compreensão profunda dos princípios do mecanismo, vamos analisar passo a passo o processo de operação real. Embora envolva várias etapas técnicas, a lógica geral é extraordinariamente clara a partir de uma perspectiva macro.

Depósito ancorado (depósito)

Gerar endereço de gateway

O protocolo Botanix gera um endereço "gateway" Taproot único combinando a chave pública da aliança FROST com o endereço Ethereum do usuário.

Transferir BTC para um endereço de múltiplas assinaturas

Os usuários transferem BTC para este endereço de gateway. Os fundos reais entram na carteira multi-assinatura do consórcio Spiderchain controlada pelo coordenador. O BTC original permanece sempre bloqueado no endereço multi-assinatura do Bitcoin e nunca sai realmente da rede Bitcoin.

Minter sintético BTC na EVM

Após a transação de depósito receber confirmação suficiente, o Sidecar (ou o usuário através do contrato de ponte) constrói a prova de inclusão Merkle e chama o contrato de cunhagem Botanix na EVM do Spiderchain. Essa transação da EVM irá destruir a "prova" de depósito ancorada na cadeia e acionar o evento de cunhagem, e o sistema imediatamente cunhará o equivalente em BTC sintético na conta EVM do usuário (deduzindo as taxas de Bitcoin e gas da EVM).

O resultado final é: os usuários possuem BTC sintético suportado 1:1 por BTC bloqueado em uma carteira multi-assinatura da Spiderchain na Botanix EVM. O BTC gasto aparecerá como um novo UTXO no conjunto de UTXOs da carteira multi-assinatura. Os nós de validação da Botanix monitoram o estado na cadeia através de suas próprias instâncias de Bitcoin, atualizando o conjunto de UTXOs e verificando as provas, garantindo que cada depósito desencadeie a emissão de tokens EVM apenas uma vez.

Retirada de ancoragem

Destruir na EVM

Os usuários iniciam a retirada ancorada ao enviar transações para queimar BTC sintético na Spiderchain EVM. Essa transação EVM deduzirá (destruirá) o montante especificado (incluindo a taxa de gás da EVM) do saldo do usuário.

Construir transações de Bitcoin

O valor do BTC sintético queimado precisa ser desbloqueado na cadeia Bitcoin. Depois que o coordenador (que também atua como um validador EVM e tem acesso a esses dados) deteta o evento de gravação, todas as solicitações de retirada pendentes são agregadas pelo coordenador líder do ciclo designado no próximo ciclo do Bitcoin. De acordo com as regras de design do Spiderchain, o UTXO a ser gasto é selecionado do pool – usando uma estratégia de (LIFO) de último a entrar, primeiro a sair, para priorizar o UTXO depositado mais recente, protegendo assim os depósitos iniciais de possíveis aquisições maliciosas.

Construção de Transações

O coordenador continua a filtrar UTXOs até que o valor total cubra o montante da retirada mais a taxa de minerador de Bitcoin. Em seguida, constrói a transação original de Bitcoin: a entrada é o UTXO selecionado, as saídas incluem (a) o endereço de Bitcoin do usuário alvo (recebendo o montante da retirada), (b) a saída de troco para um novo endereço de múltiplas assinaturas Spiderchain (garantindo que os fundos restantes permaneçam dentro do sistema).

Assinatura e transmissão de limiar

Após a construção da transação, os membros da aliança utilizam o FROST para fragmentação de chaves e assinatura conjunta. Quando o limiar de assinatura ≥t-of-n é alcançado, a transação de Bitcoin com a assinatura completa é transmitida para a rede Bitcoin. Neste momento, a queima de BTC na Spiderchain é oficialmente convertida em gastos de Bitcoin na cadeia, e os usuários recebem, ao final, BTC deduzido da taxa total (valor da queima EVM menos a taxa da rede Bitcoin).

Mecanismo de garantia de consenso e de penalização

Para garantir um ambiente confiável e manter a robustez do mecanismo, a Botanix também se aproveita da simplicidade e confiabilidade do Bitcoin, juntamente com as capacidades avançadas dos sistemas modernos. Esta solução híbrida fortalece a segurança através da combinação do simples com o complexo.

Por um lado, o mecanismo só precisa seguir a regra UTXO/spend mais básica do Bitcoin: "Uma vez que um UTXO é gasto, ele não pode ser reutilizado". Este é um princípio fundamental no consenso do Bitcoin, então o mecanismo de entrada conflitante opera essencialmente nas regras existentes do Bitcoin. Contanto que o coordenador inclua o UTXO da transação anterior em cada nova transação de retirada de âncora, o nó Bitcoin rejeitará automaticamente qualquer transação de repetição ou cópia.

Por outro lado, se o coordenador apresentar comportamento malicioso (por exemplo, assinar uma segunda transação em conflito para comprometer a assinatura múltipla), o protocolo PoS da Botanix e as cláusulas de penalização o punirão. Esse mecanismo pode efetivamente conter operações maliciosas potenciais. Essencialmente, a estratégia de "entradas em conflito" utiliza diretamente o modelo UTXO para forçar a implementação do saque âncora em uma única vez — ao vincular cada entrada de saque âncora com a saída da transação anterior, a Botanix garante que apenas a primeira transação válida possa ser bem-sucedida, qualquer transação duplicada será naturalmente rejeitada pela rede Bitcoin por constituir um gasto duplo. Este design previne habilmente transações duplicadas acidentais e ataques de repetição maliciosos, com sua segurança sendo garantida tanto pelas regras de consenso do Bitcoin quanto pelo mecanismo interno de penalização da Botanix.

Ver original
O conteúdo é apenas para referência, não uma solicitação ou oferta. Nenhum aconselhamento fiscal, de investimento ou jurídico é fornecido. Consulte a isenção de responsabilidade para obter mais informações sobre riscos.
  • Recompensa
  • Comentário
  • Compartilhar
Comentário
0/400
Sem comentários
  • 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)