O mistério das transações repetidas do Bitcoin: vulnerabilidades raras e desafios futuros

robot
Geração de resumo em curso

Duplicação de transações Bitcoin: uma lacuna de risco interessante, mas mínima

Resumo

As transações de Bitcoin geralmente utilizam saídas não gastas referenciando o ID da transação anterior. Essas saídas só podem ser gastas uma vez, caso contrário, isso levará a problemas de dupla despesa. No entanto, na história do Bitcoin, existem de fato dois conjuntos de transações exatamente iguais. Essa situação ocorre porque as transações coinbase não têm entradas, mas geram novas moedas. Assim, duas transações coinbase diferentes podem ser construídas de maneira exatamente igual, fazendo com que seus IDs de transação também sejam iguais. Além disso, apenas uma colisão de hash poderia resultar em IDs de transação duplicados, mas isso é quase impossível de ocorrer em funções de hash criptograficamente seguras.

Esses dois conjuntos de transações duplicadas ocorreram entre 14 e 15 de novembro de 2010, com um intervalo de cerca de 16 horas. Embora d5d2....8599 tenha aparecido na blockchain após e3bf....b468, ainda o classificamos como a primeira transação duplicada.

Bitcoin de transações duplicadas: um Bug interessante com risco muito baixo

Detalhes da transação duplicada

O explorador de blocos mempool.space mostrou a primeira ocorrência de uma transação duplicada aparecendo em dois blocos diferentes. Curiosamente, diferentes exploradores de blocos podem ter comportamentos padrão diferentes ao exibir transações duplicadas.

Nos quatro blocos envolvidos, apenas um bloco contém outras transações, fundindo 1 BTC e 19 BTC em uma saída de 20 BTC.

Bitcoin de transações duplicadas: um Bug interessante com risco extremamente baixo

Repetibilidade de Gasto

O valor de cada transação repetida é de 50 BTC, envolvendo um total de 200 BTC ou 100 BTC, dependendo da forma como é entendido. Até agora, esses Bitcoins não foram gastos. Teoricamente, quem possui a chave privada relacionada pode gastar esses Bitcoins, mas apenas 100 BTC podem ser recuperados na prática, pois os 50 BTC repetidos não poderão ser gastos. Quanto a partir de qual bloco essas moedas serão gastas, isso pode estar indefinido.

Bitcoin de transações duplicadas: um bug interessante com risco extremamente baixo

Problema de transações duplicadas

Transações duplicadas podem causar confusão nas carteiras e exploradores de blocos, além de potencialmente gerar riscos de ataque. Por exemplo, podem levar a pagamentos duplicados ou ataques às exchanges.

Medidas de resolução

Para resolver o problema de transações duplicadas, a comunidade Bitcoin tomou as seguintes medidas:

  1. BIP30: Proposto e implementado em 2012, proíbe o uso de TXID duplicados para transações, a menos que o TXID anterior tenha sido gasto.

  2. BIP34: Ativado em 2013, requer que a transação coinbase inclua a altura do bloco, garantindo que todas as transações sejam únicas.

  3. Parar a verificação BIP30: Em 2015, devido à implementação do BIP34, os nós pararam a verificação cara do BIP30.

Bitcoin de transações repetidas: um Bug interessante com risco extremamente baixo

Riscos potenciais

Apesar de o BIP34 resolver a maior parte dos problemas, ainda existe um risco potencial de duplicação em alguns blocos antes da ativação do BIP34, onde os scriptSigs das transações coinbase podem corresponder à altura dos blocos futuros. O próximo bloco onde podem ocorrer transações duplicadas é o 1,983,702, que se espera ser gerado por volta de janeiro de 2046.

Bitcoin de transações repetidas: um Bug interessante com risco muito baixo

Conclusão

Considerando a dificuldade de copiar transações, os custos e a escassez de oportunidades, essa vulnerabilidade não representa uma ameaça significativa à segurança do Bitcoin. No entanto, devido à sua singularidade e impacto a longo prazo, continua a ser uma questão interessante que merece atenção. No futuro, pode ser necessário resolver este problema de forma definitiva através de métodos como bifurcações suaves.

Bitcoin的重复交易:一个风险极小的有趣Bug

BTC0.55%
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • 6
  • Partilhar
Comentar
0/400
SillyWhalevip
· 21h atrás
A vulnerabilidade é um pouco interessante.
Ver originalResponder0
FlashLoanPrincevip
· 21h atrás
O código inicial era muito aleatório.
Ver originalResponder0
retroactive_airdropvip
· 21h atrás
Blockchain não é tão simples assim
Ver originalResponder0
WalletAnxietyPatientvip
· 21h atrás
O hash está quebrado, mas não se preocupe.
Ver originalResponder0
ForumLurkervip
· 21h atrás
Os detalhes daquele ano eram realmente assustadores.
Ver originalResponder0
BtcDailyResearchervip
· 22h atrás
O bug escondido foi descoberto.
Ver originalResponder0
Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)