Ativos digitais
O que é um Hard Fork?
Mudanças nas regras de uma blockchain afetam usuários, desenvolvedores, negociadores e investidores. Um conceito importante para compreendê-las é o hard fork: uma alteração nas regras de consenso incompatível com o software antigo.
Nem toda atualização de blockchain exige um hard fork. Existem também soft forks e mudanças de software que não alteram o consenso. Entender essas diferenças ajuda a identificar qual software valida as novas regras e quando uma rede pode se dividir.
O que é um hard fork?
Um hard fork modifica as regras usadas pelos nós para decidir se blocos e transações são válidos. Blocos aceitos pelas novas regras podem ser rejeitados pelos nós que seguem as antigas. A alteração pode introduzir funcionalidades ou modificar limites do protocolo. O ponto central é a compatibilidade das regras de consenso, não apenas o tamanho da mudança no código.
Operadores que desejam validar a cadeia com as novas regras precisam usar software compatível. Isso não obriga todos a aderir: alguns podem continuar seguindo as regras antigas. A continuidade da cadeia antiga depende do apoio dos participantes e do mecanismo de consenso.
Desenvolvedores ou integrantes da comunidade podem propor um hard fork para acrescentar funções, corrigir problemas ou seguir outro rumo. A proposta não altera a rede por si só; os participantes precisam adotar o software e coordenar a ativação.
O que acontece em um hard fork?
As novas regras costumam ser ativadas em uma altura de bloco ou momento definido. Nós não atualizados podem rejeitar blocos aceitos pelos novos. Porém, um hard fork não produz necessariamente duas moedas ou redes duradouras: se os participantes migrarem juntos, a cadeia antiga pode deixar de avançar.
Se grupos diferentes continuarem produzindo blocos sob regras incompatíveis, pode ocorrer uma separação duradoura. Isso difere de uma bifurcação temporária, quando dois blocos válidos surgem quase ao mesmo tempo e a rede depois converge para um histórico.
Duas cadeias que permanecem ativas compartilham o histórico até a bifurcação e depois evoluem separadamente. A antiga não se torna automaticamente irrelevante; ambas dependem do apoio de usuários, desenvolvedores, operadores de nós e mineradores ou validadores.
Qual cadeia é considerada a original?
Hard forks não acontecem apenas no Bitcoin ou no Ethereum. O nome e a identidade após uma divisão dependem do uso e do reconhecimento da comunidade e do mercado. Não há uma regra universal que entregue o nome original à cadeia com o código mais recente.
Atualizar regras e mudar a identidade de um projeto são coisas distintas. Uma rede pode manter o nome após uma atualização coordenada. Participantes que discordam podem continuar outra cadeia com nome diferente. Isso não significa que toda atualização do Bitcoin seja um hard fork.
Bitcoin Cash e Bitcoin Gold são exemplos de projetos surgidos de bifurcações relacionadas ao Bitcoin. O Bitcoin SV surgiu depois de uma bifurcação do Bitcoin Cash. São redes separadas, não apenas nomes de versões do mesmo software Bitcoin.
Por que propor um hard fork?
Os motivos incluem novas funções, mudanças em parâmetros de consenso e correções de vulnerabilidades. O apoio da maioria pode facilitar a coordenação, mas não é uma decisão central que obrigue todos os nós a aceitar mudanças. Cada participante escolhe quais regras executar.
Uma cadeia grande ou com muitos nós não é automaticamente imune a ataques. Falhas de contratos inteligentes, de software e do próprio consenso são questões diferentes. Em certas situações a comunidade pode apoiar uma alteração no estado da rede, mas isso não equivale a apagar livremente seu histórico de transações.
Também é preciso distinguir mudanças de regras de uma troca de plataforma, tema abordado no artigo relacionado sobre Polymath e Ethereum. Um exemplo de mudança de estado por hard fork foi a resposta do Ethereum ao ataque ao DAO em 2016.
Em 20 de julho de 2016, o fork do DAO foi ativado no bloco 1.920.000. O relato da Ethereum Foundation descreve a transferência de fundos dos contratos DAO afetados para um contrato de recuperação. Houve forte apoio, mas não unanimidade da comunidade: parte dos participantes rejeitou a mudança e continuou a cadeia sem o fork como Ethereum Classic.
O fork não apagou do histórico as transações do ataque. A alteração de estado transferiu fundos para um contrato novo, que permitia saques conforme os direitos dos detentores de tokens DAO. A recuperação ocorreu por esse contrato, não por um pagamento automático simultâneo a todos.
Diferenças entre hard fork e soft fork
Ambos podem alterar regras de consenso, mas diferem na compatibilidade. Um soft fork torna as regras mais restritivas: blocos válidos pelas novas regras continuam sendo aceitos pelos nós antigos, embora estes não verifiquem todas as novas restrições.
No hard fork, nós antigos podem rejeitar blocos aceitos pelas novas regras. Se os dois grupos mantiverem suas regras, podem sobreviver duas cadeias. O soft fork busca manter uma cadeia compatível, embora falhas de coordenação ou implementação também possam causar problemas e divisões.
Quem deseja validar todas as novas regras deve atualizar o software. No soft fork, um nó antigo pode acompanhar blocos novos sem compreender todas as restrições adicionais. No hard fork, pode rejeitá-los. Portanto, os dois métodos não criam obrigatoriamente a mesma divisão.
Um hard fork não é inerentemente mais seguro que um soft fork. A segurança depende do projeto, da implementação, dos testes, da ativação coordenada e do apoio à rede. Soft forks não são uma técnica obsoleta: o Taproot do Bitcoin foi um soft fork ativado em 2021.
Um hard fork também não exige automaticamente muito mais poder de processamento. As necessidades de recursos dependem das alterações concretas no protocolo. A escolha entre hard fork e soft fork envolve compatibilidade e as funções desejadas, não uma superioridade universal de segurança.
Conclusão
Hard forks permitem mudanças de consenso incompatíveis com nós antigos. Podem estar previstos em um roteiro de desenvolvimento ou responder a problemas urgentes, mas nem toda nova função exige esse mecanismo.
O resultado depende da alteração e do apoio dos participantes. Uma atualização coordenada pode preservar uma única rede, enquanto divergências podem gerar cadeias separadas. Para o usuário, é essencial compreender as regras, o software e a rede escolhidos.












