Que sont les soft forks et les hard forks ?

Hard fork soft fork

Les débats sont légion au sein de la blockchain. Certaines de ces joutes peuvent même mener à des modifications sur le fonctionnement d’une blockchain. Cette possibilité apparaît sous le terme de fork.

Il ne faut pas confondre cette notion avec celle connue en informatique qui désigne la création d’un nouveau logiciel à partir du code source d’un logiciel déjà existant comme on a pu le connaitre dans la crypto avec la Fork season OHM.

Dans le domaine de la blockchain, un soft fork ou un hard fork se caractérisent par une modification des règles de consensus. Cet article vous permettra de découvrir cette notion en profondeur de sorte à comprendre la différence entre un soft fork et un hard fork.

Schéma fork

L'intérêt de ces forks

La décentralisation est un objectif des cryptomonnaies. La volonté de se passer d’intermédiaires centralisés pour stocker et échanger de la valeur se présente comme l’enjeu majeur des différents protocoles proposés.

Tous les participants du réseau respectent des règles similaires de sorte à assurer la décentralisation. Ces règles sont désignées par le protocole de consensus. Peu importe le protocole utilisé que ce soit en Proof of Work, Proof of Stake, chaque blockchain communiquent les informations de manière décentralisée.

Ces règles de consensus permettent d’attester de la validité des transactions et des blocs. Néanmoins, l’implication directe des utilisateurs dans le respect de ces règles développe la possibilité de confronter la blockchain à un soft-fork ou, dans le pire des cas à un hard-fork lorsque celles-ci viennent à évoluer.

Qu'est-ce qu'un soft fork ?

La traduction d’un soft-fork est embranchement doux. Cette notion induit une continuité de la chaîne de blocs après que celle-ci a connu une mise à jour.

Cette modification se doit d’être rétrocompatible autrement dit : son application ne doit pas rendre obsolète l’activité des nœuds n’étant pas encore passé à la nouvelle version. La transition doit être fluide pour éviter une séparation interne.

Dans le cas du Bitcoin, un soft-fork peut apparaître soit par MASF (Miner-Activated Soft Fork) soit par UASF (User-Activated Soft Fork). Régulièrement, le choix entre ces deux solutions fait l'objet d'un long débat dans la communauté Bitcoin.

Bitcoin et les soft forks

Bitcoin soft fork

Les smart contracts sont apparus sur Bitcoin grâce à un soft fork. Pour ce faire, le type d’adresse P2SH (BIP16) a été intégré au réseau afin de faciliter leur implémentation. Pour réaliser cette nouvelle version, un MASF a été utilisé et le changement s’est effectué avec brio le 1er avril 2012.

Ces smart contracts ont vu leur efficacité et leur confidentialité augmenter grâce au soft-fork Taproot. La mise à niveau Taproot permet de changer le protocole de signature avec pour objectif d’améliorer la sécurité et la complexité des smart contracts.

Source : Journal du coin

Qu'est-ce qu'un hard fork ?

À l’inverse du soft-fork, le hard-fork est un embranchement dur. La modification des règles de consensus est incompatible avec l’ancienne chaîne de sorte qu'une division inévitable de la chaîne de blocs soit réalisée. 

Cette incompatibilité des nouvelles règles avec les anciennes engendre des problématiques diverses notamment sur la légitimité de la chaîne qui doit perdurer. Deux cas de figure peuvent alors se présenter. Soit la mise à niveau des règles est globalement acceptée soit un contentieux nait entre les membres du réseau.

Si la mise à niveau se fait en douceur alors l’ancienne chaîne perd la quasi-totalité de ses utilisateurs. De fait, elle n’existera plus. Par contre, si la mise à niveau crée un contentieux, le désaccord aura pour conséquence de diviser la blockchain en deux selon le camp choisi par les utilisateurs.

Ethereum et les hard forks

Ethereum hard fork

Ethereum a un historique fourni en matière de hard fork. Qu’ils soient globalement acceptés ou sujets à un contentieux, ces hard fork nourrissent son histoire.

Durant l’été 2021, le hard fork London a été déployé avec succès sur la blockchain Ethereum. Ce hard fork, globalement accepté, apporte un changement historique puisqu’il permet de faire évoluer le système de frais. Désormais, une partie des frais ira toujours aux mineurs, mais une autre partie sera brûlée. Ce changement a pour objectif de rendre le cours de la monnaie déflationniste en détruisant une partie de la supply totale d’Ethereum.

En 2016, Ethereum subit un hack conséquent. Une faille dans le projet The DAO est exploitée par des hackeurs leur permettant de subtiliser 50 millions de dollars aux utilisateurs. À la suite de cette malheureuse situation, de nombreuses voix se sont élevées pour opérer un hard fork afin de dédommager la communauté. Le hard fork ayant été décidé par la majorité, celui-ci eut lieu.

Néanmoins, une partie étant contre ce hard fork, pour des raisons tant philosophiques que techniques, l’ancienne blockchain a continué d’exister. Ainsi, la blockchain s’est divisée entre Ethereum (nouvelle) et Ethereum Classic (ancienne).

Source : Ethereum France

Conclusion

La robustesse et l’immuabilité de la blockchain ne doivent pas faire disparaître des principes inhérents à l’évolution de la société. Le soft fork et le hard fork représentent des solutions afin de pallier des problèmes techniques, économiques ou sociaux qui surviendraient sur une blockchain.

Les mises à jour ont pour intérêt d’assurer en permanence la volonté des utilisateurs dans le respect du consensus.

L’effet de réseau est indispensable au bon fonctionnement d’une blockchain. En cas de hard fork, des contentieux peuvent apparaître et nuire durablement à la partie minoritaire étant contre le changement opéré.