Bitcoin: fork BIP-110 trava após apenas dois blocos

O fork BIP-110 do Bitcoin permanecia travado no bloco 961.633 em 9 de agosto. Enquanto isso, a cadeia dominante, que não aplica as regras da proposta, avançou até o bloco 961.744.

Com isso, a distância entre as redes chegou a 111 blocos, ante 88 no início do domingo. A bifurcação produziu somente dois blocos desde o início da sinalização obrigatória.

Cadeia principal amplia vantagem sobre o BIP-110

O acompanhamento do BIP-110 Monitor mostrava a cadeia minoritária parada no bloco 961.633. Por outro lado, a rede principal do Bitcoin mantinha seu ritmo normal de produção.

O impasse revela o apoio efetivo dos mineradores ao BIP-110. No período de dificuldade anterior, somente 51 dos 2.016 blocos sinalizaram apoio à proposta. Esse total corresponde a 2,53%.

Desde o começo da janela obrigatória, no bloco 961.632, a cadeia dominante produziu 113 blocos sem sinalizar a proposta.

“O Bitcoin funcionou exatamente como projetado. O BIP-110 teve liberdade para criar um fork, e a rede teve liberdade para não segui-lo. O resultado foi decisivo: cerca de 99,85% do poder de hash do Bitcoin permaneceu com o Bitcoin. O ramo BIP-110 minerou apenas dois blocos e já está mais de 80 blocos atrás.”

Michael Saylor, no X.

Roughnecks produz os dois blocos do fork

Os nós que aplicam o BIP-110 começaram a rejeitar blocos sem sinalização na altura 961.632, em 8 de agosto. Em seguida, a Roughnecks produziu um bloco alternativo nessa altura e minerou o bloco 961.633.

O registro da OCEAN confirma que a Roughnecks minerou o primeiro bloco pelo sistema DATUM. Na ocasião, a dificuldade alcançava 127,48 trilhões.

Porém, o avanço parou pouco depois. Cerca de 17 horas mais tarde, o endpoint de mineração da OCEAN ainda indicava o bloco 961.633 como o mais recente.

Na última consulta, o endpoint exibia aproximadamente 257 PH/s de poder computacional. Em contraste, a cadeia dominante continuava acrescentando blocos normalmente.

Dificuldade integral restringe avanço do fork

O problema decorre do ajuste de dificuldade do Bitcoin. O BIP-110 se separou no início do período de dificuldade 477, mas herdou o mesmo alvo da cadeia dominante.

Assim, a perda da maior parte do poder computacional não facilitou a mineração no fork. A OCEAN registrava a dificuldade em 127,48 trilhões.

Normalmente, o Bitcoin recalcula a dificuldade após cada período de 2.016 blocos. Contudo, o ramo BIP-110 produziu apenas os blocos 961.632 e 961.633 na janela atual.

Portanto, a cadeia precisa minerar o restante do período antes de obter um ajuste normal. Sem novos mineradores, essa espera pode se tornar extremamente longa.

Michael Saylor classificou o resultado como decisivo. Ele calculou que cerca de 99,85% do poder de hash rejeitou o fork, embora essa porcentagem represente sua própria estimativa.

Separadamente, Saylor projetou um prazo de aproximadamente 25 anos para o primeiro ajuste de dificuldade. O cálculo considera cerca de 0,15% do poder de hash do Bitcoin.

Ainda assim, o poder de mineração pode entrar ou sair de qualquer cadeia. Desse modo, uma mudança relevante nessa participação alteraria o prazo de forma acentuada.

Sinalização obrigatória prossegue apesar da rejeição

O BIP-110 não encerrou sua implantação após ficar abaixo da meta de sinalização voluntária. A especificação do BIP-110 exige 55% de apoio nessa etapa.

Entretanto, a proposta também prevê uma janela obrigatória entre os blocos 961.632 e 963.647. Nesse intervalo, os nós participantes rejeitam blocos cujo campo de versão não sinaliza o bit 4.

Dessa forma, o BIP-110 pode criar uma cadeia minoritária mesmo com baixo apoio dos mineradores. Os grupos passam, então, a discordar sobre a validade dos blocos.

A cadeia dominante preserva uma atividade de mineração muito maior. Já os nós que aplicam o BIP-110 continuam na cadeia com apenas dois blocos.

Risco de replay afeta moedas anteriores à divisão

A coexistência das cadeias cria um problema prático para quem pretende movimentar saldos anteriores ao fork. O BIP-110 não oferece proteção automática contra replay para esses valores.

Por isso, uma transação assinada em uma cadeia pode continuar válida na outra sob determinadas circunstâncias. O desenvolvedor Kevin Loaec alertou sobre o risco.

Segundo Loaec, vender moedas no fork minoritário sem separar os saldos pode expor os BTC correspondentes na cadeia dominante.

O risco existe porque as duas histórias compartilham as mesmas saídas de transações anteriores à divisão. Isso, porém, não permite o controle automático de uma carteira inteira.

Participantes podem copiar e retransmitir uma transação válida nas duas redes. Nesse caso, as mesmas entradas podem se movimentar em cada cadeia.

Quem mantém os saldos pré-divisão parados não cria uma transação assinada sujeita ao replay. A relevância econômica dependerá do valor atribuído à cadeia minoritária.

Próximos marcos e plano alternativo

A sinalização obrigatória continua até o bloco 963.647. Conforme o BIP-110, a proposta deve atingir o estado Locked In, no máximo, no bloco 963.648.

Depois disso, o estado Active começaria um período de dificuldade mais tarde. As regras de consenso para redução de dados entrariam em vigor no bloco 965.664.

Essas regras durariam 52.416 blocos, aproximadamente um ano no ritmo planejado de produção do Bitcoin. A cadeia dominante pode alcançar essas alturas rapidamente se mantiver o ritmo atual.

No entanto, o ramo parado no bloco 961.633 enfrenta uma trajetória muito mais longa. Sua baixa participação computacional limita o avanço até os próximos marcos.

Os apoiadores do BIP-110 também prepararam uma alternativa mais radical. Chris Guida mantém no GitHub um ramo com 12 commits sobre uma possível mudança no proof-of-work.

O código inclui a seleção de outro algoritmo e a configuração de um horário para hard fork. Apesar disso, ele não estabelece uma data de ativação.

Guida descreveu o trabalho como um código de contingência, não como um fork programado para ocorrer imediatamente. Às 15h27 UTC de domingo, o BIP-110 ainda não havia produzido um terceiro bloco.

Naquele momento, nenhum bloco do novo período da cadeia dominante havia sinalizado apoio à proposta.