Ataque de distorção temporal do Bitcoin: Análise de vulnerabilidades ocultas e soluções de correção

O ataque de distorção temporal do Bitcoin: um potencial risco de segurança

No dia 26 de março de 2025, os desenvolvedores do Bitcoin apresentaram uma proposta de soft fork chamada "Grande Limpeza do Consenso". Esta proposta visa corrigir vários vulnerabilidades e fraquezas que existem há muito tempo no protocolo do Bitcoin, incluindo o problema de transações duplicadas que discutimos anteriormente. Outra vulnerabilidade mais grave é conhecida como "Ataque de Distorção Temporal", que é precisamente o tema que este artigo irá explorar em profundidade.

Bitcoin segurança vulnerabilidade: ataque de distorção temporal

Mecanismo de proteção de timestamp do bloco Bitcoin

Antes de discutir o ataque de distorção temporal, precisamos entender as regras atuais de proteção contra manipulação do tempo:

  1. Tempo mediano passado (MPT) regras: O timestamp do bloco deve ser posterior ao tempo mediano dos últimos onze blocos.

  2. Regras futuras de tempo de bloco: com base na constante MAX_FUTURE_BLOCK_TIME, o carimbo de tempo do bloco não pode estar mais de 2 horas à frente do tempo médio da rede. A diferença máxima permitida entre o tempo do nó e o relógio do sistema local é de 90 minutos, que é outra garantia.

As regras MPT garantem que os blocos não vão demasiado "voltar ao passado", enquanto as regras dos blocos futuros impedem que eles "atravessem o futuro". É importante notar que não é possível implementar regras semelhantes às dos blocos futuros para impedir que os blocos tenham timestamps do passado, uma vez que isso poderia afetar o processo de sincronização inicial da blockchain. O ataque de distorção temporal é precisamente realizado através da falsificação de timestamps que voltam muito ao passado.

Bitcoin segurança vulnerabilidade: ataque de distorção temporal

O erro "faltando um" de Satoshi Nakamoto

O ciclo de ajuste de dificuldade do Bitcoin contém 2016 blocos, o que equivale a aproximadamente duas semanas, considerando um tempo alvo de bloco de 10 minutos. Para calcular o ajuste de dificuldade de mineração, o protocolo calculará a diferença de timestamp entre o primeiro e o último bloco na janela relevante de 2016 blocos. Esta janela de 2016 blocos contém, na verdade, 2015 intervalos de blocos (ou seja, 2016 menos 1). Portanto, o tempo alvo relevante usado deve ser 60 segundos × 10 minutos × 2015 intervalos, resultando em 1.209.000 segundos. No entanto, o protocolo do Bitcoin usa o número 2016 para calcular o alvo. 60 segundos × 10 minutos × 2016 = 1.209.600 segundos. Este é um erro de "um a menos", que pode ter sido causado pela confusão entre o número de blocos e o número de intervalos de blocos.

Este erro faz com que o tempo alvo seja 0,05% mais longo do que deveria ser. Na verdade, o intervalo alvo de blocos do Bitcoin não é de 10 minutos, mas sim de 10 minutos e 0,3 segundos. Esta pequena diferença é quase irrelevante no funcionamento diário, especialmente considerando que desde 2009, devido ao crescimento contínuo da capacidade de processamento, o intervalo médio real de blocos tem sido consistentemente inferior a 10 minutos.

Bitcoin segurança vulnerabilidades: ataque de distorção temporal

Princípio do ataque de distorção temporal

O ataque de distorção do tempo foi descoberto pela primeira vez em 2011, explorando este erro de Satoshi Nakamoto no cálculo de dificuldade. A ideia central do ataque é:

  1. Para a maioria dos blocos, defina o timestamp para avançar apenas um segundo em relação ao bloco anterior.
  2. A cada seis blocos, o carimbo de data/hora é avançado em um segundo, para cumprir as regras do MPT.
  3. No último bloco de cada período de ajuste de dificuldade, defina o carimbo de data/hora para o tempo do mundo real.
  4. O timestamp do primeiro bloco do próximo ciclo foi novamente definido para o passado.

Esta operação faz com que o tempo da blockchain fique cada vez mais atrasado em relação ao tempo real, levando a um aumento constante da dificuldade. No entanto, como o último bloco de cada ciclo utiliza um carimbo de data/hora real, o cálculo da dificuldade considera que o tempo passa mais devagar do que realmente passa, resultando numa redução acentuada da dificuldade após o segundo ciclo de ajuste.

Impacto potencial do ataque

Se implementado com sucesso, este tipo de ataque pode levar a:

  1. A dificuldade caiu drasticamente
  2. A velocidade de geração de blocos aumentou significativamente
  3. Criar uma grande quantidade de Bitcoin em um curto espaço de tempo
  4. Pode causar confusão no mercado

No entanto, a implementação deste ataque enfrenta muitos desafios:

  1. É necessário controlar a maior parte do poder de computação da rede.
  2. A existência de mineradores honestos aumentará a dificuldade
  3. O processo de ataque pode ser detectado a tempo e medidas podem ser tomadas

Bitcoin segurança vulnerabilidade: ataque de distorção temporal

Solução

Para corrigir esta falha, existem várias possíveis abordagens:

  1. Modificar o algoritmo de ajuste de dificuldade, corrigir completamente o erro "faltando um".
  2. Cancelar a regra MPT, exigindo que o tempo se mova sempre para frente em cada bloco.
  3. Definir novas regras de limitação: exige-se que o tempo do primeiro bloco do novo ciclo de dificuldade não seja anterior a um tempo específico antes do último bloco do ciclo anterior (por exemplo, 2 horas).

A proposta atual de "limpeza do grande consenso" adotou um terceiro método, sugerindo um limite de 2 horas. Este plano pode efetivamente prevenir ataques de distorção temporal, ao mesmo tempo que minimiza o risco de gerar blocos inválidos acidentalmente.

A comunidade Bitcoin está ativamente discutindo e aprimorando essas propostas para garantir a segurança e a estabilidade a longo prazo da rede. Com o desenvolvimento contínuo da tecnologia, temos razões para acreditar que a rede Bitcoin se tornará mais forte e confiável.

Bitcoin segurança vulnerabilidades: ataque de distorção temporal

BTC-2.65%
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
  • 4
  • Partilhar
Comentar
0/400
LiquidityHuntervip
· 21h atrás
Grande madrugada, mais uma vulnerabilidade de segurança. O preço desmorona, vale a pena esperar uma oportunidade de arbitragem?
Ver originalResponder0
GasWastingMaximalistvip
· 21h atrás
Que confusão! Vão mudar as regras novamente?
Ver originalResponder0
ZenMinervip
· 22h atrás
Cavando, acabei por adormecer. De qualquer forma, não estamos com pressa.
Ver originalResponder0
faded_wojak.ethvip
· 22h atrás
Esse bug soa assustador. Fico olhando para ele o dia todo.
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)