


A maleabilidade de transações é um conceito essencial no setor das criptomoedas, especialmente na rede Bitcoin. Este artigo analisa as especificidades da maleabilidade de transações, as suas causas, os tipos de ataque, exemplos práticos, os impactos no ecossistema das criptomoedas e soluções possíveis.
Maleabilidade de transações designa a possibilidade de alterar o identificador único de uma transação (TXID) antes da sua confirmação num bloco da rede Bitcoin. Esta alteração não afeta os elementos fundamentais da transação, como o remetente, o destinatário ou o montante transferido, mas modifica a 'impressão digital' ou hash que identifica de forma exclusiva a transação na blockchain.
O problema central reside na forma como as transações Bitcoin são assinadas. Apesar de a assinatura digital abranger a maior parte dos dados da transação, certas componentes, como o campo scriptSig do input, não ficam protegidas pela assinatura. Esta omissão permite pequenas alterações não essenciais nos dados da transação, capazes de modificar o hash e, por consequência, o TXID.
Existem vários fatores que contribuem para a maleabilidade de transações:
Esquema de assinatura digital: O método de assinatura digital atualmente utilizado não abrange todos os dados da transação, permitindo modificações.
Campos flexíveis na transação: Alguns campos podem ser representados por diferentes formas válidas, o que permite alterações que não invalidam a transação, mas alteram o seu TXID.
Alterações por terceiros: Antes da confirmação, terceiros podem modificar aspetos maleáveis da transação sem a invalidar.
Os ataques de maleabilidade podem assumir vários formatos:
Corrupção de dados: Manipulação de partes não essenciais de uma transação para gerar confusão.
Duplicação de faturas: Cópia de faturas para induzir utilizadores ou serviços a pagar duas vezes a mesma fatura.
Manipulação de taxas: Alteração da transação para modificar a taxa associada.
Modificação do ID da transação: Alteração do TXID para levar uma das partes a acreditar que a transação falhou ou não foi processada.
Duplo gasto: Facilitação do duplo gasto ao fazer com que transações modificadas pareçam transações novas e distintas.
Um caso prático relevante de maleabilidade de transações ocorreu em 2014 numa importante exchange de criptomoedas. A plataforma suspendeu os levantamentos e entrou em insolvência após perder uma quantia significativa de Bitcoin. Os hackers exploraram a maleabilidade das transações para alterar transações antes de serem assinadas e hashadas, gerando confusão nas operações da exchange e levantamentos sucessivos que esgotaram as reservas de Bitcoin.
A maleabilidade de transações pode ter vários impactos na rede Bitcoin:
Impacto nas operações das exchanges e escalabilidade: Pode provocar atrasos nas transações e, potencialmente, limitar a capacidade de processamento da rede.
Atrasos na confirmação de transações: Sistemas que dependem de TXIDs específicos podem não reconhecer IDs alterados, gerando atrasos e uma experiência de utilizador insatisfatória.
Risco de fraude e duplo gasto: A maleabilidade pode abrir portas a fraudes com criptomoedas, ao criar incerteza sobre o estado das transações.
Para combater a maleabilidade de transações, foram propostas e implementadas várias soluções:
Segregated Witness (SegWit): Esta atualização separa os dados de assinatura dos restantes dados da transação, impedindo modificações ao TXID.
Assinaturas Schnorr: Permitem a verificação de transações Bitcoin sem recurso a identificadores digitais.
Merkelized Abstract Syntax Trees (MAST): Esta proposta visa permitir operações de scripting mais avançadas e taxas de transação inferiores, melhorando a escalabilidade.
A maleabilidade de transações é uma problemática complexa com implicações relevantes para a rede Bitcoin e para as transações de criptomoedas em geral. Apesar dos desafios para a segurança e processamento, os avanços tecnológicos na blockchain procuram resolver estas vulnerabilidades. Com a evolução do ecossistema das criptomoedas, compreender e mitigar a maleabilidade das transações continuará a ser fundamental para garantir a integridade e eficiência das operações digitais.
A maleabilidade de transações é uma vulnerabilidade em certas criptomoedas que permite alterar o ID de uma transação sem modificar o seu conteúdo, possibilitando ataques de duplo gasto.
Consulte o software da sua carteira ou utilize um explorador de blockchain. O hash é o identificador exclusivo da sua transação, normalmente visível nos detalhes da operação.
Não, o hash de uma transação não pode ser revertido. Uma vez registado na blockchain, funciona como identificador único e permanente da transação.
A regra dos 51% refere-se à situação em que uma entidade controla mais de metade do poder de consenso de uma blockchain, podendo manipular transações e blocos. Redes de maior dimensão são mais resistentes, enquanto as mais pequenas permanecem vulneráveis.











