O que são Hard Forks vs. Soft Forks na criptomoeda?

No desenvolvimento de software, um Forquilha é uma ramificação ou divisão de código em projetos separados. Bifurcações de criptomoeda acontecem o tempo todo e geralmente não há nada com que se preocupar.

Como todos os projetos de blockchain (o que é blockchain?) Envolvem algum tipo de software, é isso que queremos dizer quando falamos sobre bifurcação. Ao bifurcar um projeto, você está pegando uma cópia do código em um momento específico e, em seguida, construindo sobre esse código como um projeto separado.

Um exemplo de garfo é Bitcoin e Bitcoin Cash. O Bitcoin Cash começou com a base de código do Bitcoin, mas agora funciona como um projeto independente. Quaisquer alterações feitas no Bitcoin não são transferidas para o Bitcoin Cash, e cada conjunto de tokens é separado.

A bifurcação não precisa ser uma coisa ruim. Muitas empresas bifurcam seu próprio software. Isso pode ser para manter o suporte para dois sistemas operacionais muito diferentes, por exemplo, ou para manter uma versão antiga ou desatualizada junto com uma versão mais atualizada.

Os garfos de criptomoeda não são diferentes de qualquer outro garfo de software. Por exemplo, o desenvolvedor A acredita que um projeto blockchain deve fazer X, mas o desenvolvedor B acredita que deveria fazer Y. Se X e Y estiverem muito distantes um do outro, o desenvolvedor A ou B pode escolher fazer um fork. Cada desenvolvedor pode desenvolver seus próprios recursos sem interferir uns com os outros.

Forks também podem acontecer com recursos arriscados ou experimentais.

Se os desenvolvedores se dão bem, ou ocorre um acordo ou compromisso, a versão bifurcada pode se fundir de volta ao código original mais tarde, ou o código original pode ser abandonado em favor do novo código bifurcado.

Tudo isso parece bom, mas o que isso tem a ver com usuários de criptomoedas como você e eu? Bem, como muitos projetos de criptomoeda são de código aberto, os bifurcações podem acontecer e acontecem o tempo todo – às vezes por motivos legítimos (como maior velocidade ou segurança), às vezes por motivos egoístas (como facilitar a mineração em determinado hardware).

Hard Forks vs. Soft Forks em criptomoeda

UMA garfo macio frequentemente envolve pequenas alterações de código. Isso pode ser terminologia ou mudanças que não alteram a forma como um determinado blockchain opera. Os garfos macios muitas vezes não são intrusivos e podem coexistir com a versão não marcada.

Com garfos macios, os mineiros podem optar por mudar para o novo código. Como não há grandes mudanças, quaisquer nós que executam softwares mais antigos ainda devem ser capazes de aceitar blocos gerados pelos novos nós – no entanto, novos nós rejeitarão os blocos gerados por nós antigos. Se mineiros suficientes mudarem para a versão bifurcada, não haverá nós suficientes no código antigo para processar qualquer transação. Os novos nós rejeitariam todos os blocos dos nós antigos, forçando-os a mudar.

É aqui que fica problemático: se um garfo macio for arriscado ou impopular, os mineiros não podem mudar para ele. Se apenas uma minoria de nós executar o novo código, ele pode morrer e ser substituído no código.

UMA garfo duro geralmente é muito mais problemático. Os garfos rígidos geralmente precisam de toda a rede para mudar para o novo código. Se alguns nós executassem o código não marcado, os nós podem gerar dados de maneiras diferentes e perder a sincronia. Embora seja possível executar nós hard-forked e nãoked nodes no mesmo blockchain juntos, isso raramente é feito. Cada conjunto de nós se rejeitaria, e você teria muitos problemas.

Tanto problema, na verdade, que os desenvolvedores de blockchain podem insistir que cada nó seja atualizado para o fork. Isso geralmente é feito em uma data futura após a mineração de um bloco específico. Isso permite que cada nó tenha tempo para atualizar.

Se uma bifurcação difícil acontece no código, mas alguns desenvolvedores discordam da mudança, as coisas podem ficar complicadas. Os próprios mineiros podem se encontrar no meio de uma dura batalha e ser forçados a escolher um lado. Se as coisas ficarem realmente ruins, um novo projeto pode surgir – com base no código original, com as alterações feitas pelo hard fork. O código não ordenado continua como sempre, e o código bifurcado deve começar novamente.

Isso é chamado de divisão de corrente, e esse divórcio de código muitas vezes pode ser uma má notícia. O projeto original pode perder apoiadores, nós ou financiadores para o projeto hard-forked, mas o novo projeto também pode precisar encontrar uma fonte de receita ou um conjunto de nós para operar a rede. Esta batalha amarga raramente termina bem para qualquer uma das partes.

Quando ocorre uma divisão da cadeia, os desenvolvedores podem optar por manter uma cópia dos registros junto com o código, o que significa que qualquer pessoa que tiver tokens na rede original também terá tokens na nova rede. A criptomoeda gratuita pode parecer incrível, mas existem alguns perigos potenciais que podem impactar gravemente esse projeto.

Sem um gerenciamento cuidadoso da bifurcação, os usuários da rede podem dobrar as moedas gastas. Se uma transação acontecer antes da bifurcação, mas não for registrada até depois da bifurcação, você pode ter tokens na nova rede que não estavam presentes na rede antiga. Por esse motivo, a maioria dos hot wallets, trocas e nós interromperão o processamento de transações por uma pequena janela de manutenção antes e depois do tempo de bifurcação designado.

Se você estiver usando sua própria carteira de criptomoeda segura, pode ser necessário migrar suas moedas, dependendo do garfo.

Forks criptomoeda: embrulhado

Um dos principais valores por trás de projetos públicos de criptomoeda de código aberto é a segurança. A bifurcação geralmente aumenta a segurança, mas garfos rígidos podem ser problemáticos.

Se você é um usuário de criptomoeda, geralmente não terá nada com que se preocupar. Se você for um minerador executando seus próprios nós, precisará acompanhar o status de desenvolvimento do projeto e o consenso atual da comunidade.

Quais são suas experiências com bifurcação? Talvez você esteja executando um nó quando ocorre uma bifurcação ou talvez seja a pessoa da equipe de desenvolvimento que está fazendo a bifurcação. Deixe-nos saber na seção de comentários abaixo!