Os horários dos blocos de Bitcoin podem retroceder sem que a cadeia mude de ordem

Pontos-chave
- O bloco 974,988 foi minerado depois do bloco 974,987, mas tinha um horário 3 minutos e 22 segundos anterior.
- O Bitcoin permite horários que não seguem o bloco imediatamente anterior, desde que respeitem os limites de consenso.
- Os vínculos criptográficos estabelecem a ordem dos blocos; os horários indicam uma hora aproximada.
Dois blocos consecutivos, horários invertidos
Os horários dos blocos de Bitcoin pareceram retroceder em 7 de novembro, quando um bloco recém-minerado tinha um horário anterior ao de seu predecessor imediato. Os dois registros eram o bloco 974,987, com horário de 21:22:24 UTC, e o bloco 974,988, com horário de 21:19:02 UTC. Como o bloco 974,988 foi minerado depois, os horários exibidos pareciam fora de sequência por três minutos e 22 segundos. Essa divergência levantou dúvidas sobre uma possível falha na blockchain do Bitcoin.
A discrepância estava visível em um explorador público de blockchain e foi destacada por Alex Thorn, chefe de pesquisa da Galaxy Digital. Thorn observou que o mempool.space e seu próprio painel exibiam a mesma aparente inversão, ressaltando que nenhuma das duas exibições estava errada. A principal diferença é que o horário mostrado é um valor registrado dentro de um bloco, não um registro preciso fornecido por um relógio central da rede no momento da mineração.
À primeira vista, ver um bloco posterior exibir um horário anterior pode parecer uma contradição na própria história da cadeia. Mas o incidente diz respeito aos carimbos de data e hora, não à sequência dos blocos. Os dois registros identificam um caso específico em que essas medidas divergiram. Saber se isso aponta para uma falha de consenso depende das regras que o Bitcoin realmente verifica, e essas regras não exigem que o carimbo de data e hora de cada bloco seja posterior ao do bloco imediatamente anterior.
Como os carimbos de data e hora do Bitcoin são definidos e verificados
Os mineradores de Bitcoin escolhem o carimbo de data e hora associado a um bloco. A fonte explica que eles podem ajustá-lo enquanto procuram um bloco válido, acrescentando mais combinações para seus computadores testarem. Essa flexibilidade significa que o carimbo de data e hora não é simplesmente a leitura de um relógio sincronizado, repassada sem alterações de um bloco para o seguinte. É um campo definido pelos mineradores durante o trabalho necessário para produzir um bloco aceito pelas regras do Bitcoin.
Essa liberdade tem limites. O carimbo de data e hora de um bloco deve ser posterior à mediana dos horários dos 11 blocos anteriores e não pode estar mais de duas horas à frente do relógio do nó que o valida. Essas verificações restringem o valor, mas não exigem uma sequência estritamente crescente de um bloco para o seguinte. Em outras palavras, o horário permitido é avaliado com base em um histórico recente mais amplo e no relógio de um nó, e não apenas no carimbo de data e hora do bloco pai.
A regra da mediana é fundamental para entender a aparente inversão. Um carimbo de data e hora pode ser anterior ao do bloco imediatamente precedente e, ainda assim, ser posterior à mediana dos 11 blocos anteriores. Portanto, as verificações de consenso do Bitcoin permitem certa irregularidade local nos carimbos de data e hora. O par de 7 de novembro ilustra essa distinção: o horário exibido pelo bloco mais recente era anterior, mas esse fato, por si só, não demonstra que a rede aceitou um bloco inválido.
Por que o carimbo de data e hora não determina a ordem dos blocos
A análise de Thorn contextualiza com que frequência os carimbos de data e hora diferem de um relógio que avança de forma simples. Ele disse que cerca de 3% dos blocos de Bitcoin têm carimbos de data e hora anteriores aos de seus blocos-pais. Também disse que aproximadamente um em cada dez blocos chega com um carimbo de data e hora mais de um minuto à frente do momento em que seu nó o recebeu. Esses números descrevem comportamentos distintos dos carimbos de data e hora e ajudam a mostrar por que esse campo não deve ser interpretado como um registro preciso e continuamente sincronizado do tempo no mundo real.
Os números não significam que os blocos sejam reordenados rotineiramente nem que as regras de consenso sejam ignoradas. Eles mostram que os horários podem diferir da expectativa do leitor de uma cronologia exata e, ainda assim, cumprir as verificações estabelecidas. A fonte não identifica uma falha da rede neste incidente; em vez disso, explica o papel permitido dos horários definidos pelos mineradores. Esse par específico chamou atenção porque os horários exibidos tornaram essa distinção especialmente evidente.
O Bitcoin estabelece a sequência dos blocos por meio de vínculos criptográficos, não ordenando-os pelos horários. Cada bloco contém o hash único do bloco anterior, conectando-o ao seu antecessor e deixando explícita a ordem desses registros. Assim, um horário anterior em um bloco posterior não apaga nem inverte esse vínculo. Para determinar qual desses dois blocos veio primeiro na cadeia, a relação criptográfica é a evidência relevante.
O que o incidente significa para registros baseados em horário
Segundo a fonte, uma reorganização genuína da blockchain exige uma cadeia concorrente com mais trabalho de mineração acumulado. Alterar os horários, por si só, não pode produzir esse resultado. Portanto, a divergência entre os horários não significa que as transações tenham sido revertidas nem que o bloco anterior tenha deixado de preceder o posterior. Essa distinção é importante: um horário surpreendente e uma mudança no histórico aceito da cadeia são eventos diferentes, regidos por mecanismos diferentes.
Para quem usa registros da blockchain para estabelecer quando algo aconteceu, a limitação prática é que o horário é aproximado, e não o de um relógio independente e exato. A altura do bloco fornece a sequência, enquanto o horário oferece uma estimativa de tempo de acordo com as regras do Bitcoin. A fonte observa especificamente que essa diferença importa para qualquer pessoa que dependa de registros da blockchain para determinar com precisão quando um evento ocorreu. Uma interpretação sensível ao tempo não deve confundir o horário exibido com uma prova do momento exato no mundo real.
Satoshi Nakamoto descreveu o Bitcoin como um “servidor de carimbo de data/hora” no white paper original, mas o exemplo de 7 de novembro mostra por que essa descrição não implica leituras de relógio perfeitamente ordenadas. O sistema depende de provas criptográficas para determinar a ordem dos blocos e de carimbos de data/hora limitados para indicar um horário aproximado. O que permanece incerto no incidente relatado é o motivo exato pelo qual o minerador escolheu aquele valor específico; a fonte explica as regras e o resultado, mas não identifica uma motivação específica para o carimbo de data/hora daquele bloco.
Fonte: BeInCrypto