Hard forks et soft forks dans la crypto
article-4994

Hard forks et soft forks dans la crypto

Ellie Montgomery · 8 septembre 2025 · 8m ·

Les hard forks et les soft forks sont des mécanismes essentiels pour implémenter des changements et des améliorations dans des réseaux blockchain décentralisés sans autorité centrale. Ils permettent à la blockchain d'évoluer et d'intégrer de nouvelles fonctionnalités, offrant ainsi flexibilité et amélioration au fil du temps.

Notions de base

Mettre à jour des applications bancaires est un processus nécessaire pour éviter de se voir refuser l'accès à leurs services. Sur smartphone, cela se fait généralement via une notification et parfois automatiquement sans que l'utilisateur ne s'en aperçoive. Cependant, mettre à niveau une blockchain est une tâche plus complexe puisqu'il n'existe pas d'autorité centrale pouvant imposer des mises à jour et déployer de nouvelles fonctionnalités au sein du réseau. 

Cet article examine le processus de mise à niveau des réseaux de cryptomonnaies, même en l'absence d'une autorité centrale. Pour cela, deux mécanismes peuvent être appliqués : les hard forks et les soft forks.

Qui décide des changements dans la blockchain ?

Comprendre la gouvernance d'un réseau blockchain est crucial pour saisir le fonctionnement des forks. Dans Bitcoin, le processus décisionnel implique trois sous-ensembles de participants qui contribuent activement au réseau : les développeurs, les mineurs et les utilisateurs de nœuds complets. Les nœuds légers, tels que les portefeuilles sur appareils personnels, sont aussi des membres importants du réseau, mais ils ne participent pas à la mise à niveau de la blockchain.

Développeurs

Les développeurs sont responsables de la création et de la mise à jour du code, et n'importe qui peut contribuer à ce processus. Ils soumettent publiquement des changements afin que d'autres développeurs puissent les réviser.

Mineurs

Les mineurs sécurisent le réseau en exécutant le code de la cryptomonnaie et en consacrant des ressources à l'ajout de nouveaux blocs à la blockchain. Dans le réseau Bitcoin, ils utilisent la preuve de travail (Proof of Work) pour ajouter des blocs, et ils reçoivent une récompense de bloc pour leurs efforts.

Utilisateurs de nœuds complets

Les utilisateurs de nœuds complets, en tant que colonne vertébrale du réseau, valident, envoient et reçoivent des blocs et des transactions et conservent une copie de la blockchain. Il y a souvent un chevauchement entre ces catégories, puisque certaines personnes peuvent assumer plusieurs rôles.

Alors que les développeurs et les mineurs jouent un rôle important dans la prise de décision, le véritable pouvoir se trouve au niveau des nœuds complets. Les utilisateurs ont la possibilité de choisir le logiciel qu'ils utilisent, et les développeurs ou mineurs ne peuvent pas les contraindre à utiliser un logiciel spécifique.

Le logiciel n'est pas propriétaire, donc les utilisateurs peuvent effectuer toutes les modifications qu'ils souhaitent. Si d'autres exécutent leur logiciel modifié, ils peuvent tous communiquer entre eux et un nouveau réseau se crée dans le processus. Ainsi, les développeurs et les mineurs ne peuvent pas imposer des changements indésirables aux utilisateurs.

Globalement, ces acteurs ne sont pas des souverains tout-puissants, mais plutôt des prestataires de services. Si les gens décident de ne plus utiliser le réseau, la cryptomonnaie perdra de la valeur, affectant directement les mineurs. Les développeurs peuvent aussi être ignorés par les utilisateurs. Ainsi, la prise de décision dans les réseaux blockchain est un effort collaboratif.

Explication du fork 

Dans le monde du développement logiciel, un fork se produit lorsque le code est copié et modifié, créant un projet distinct qui prend une direction différente de l'original. C'est un phénomène courant dans les projets open source et peut être vu comme une divergence de deux projets qui partageaient auparavant une base commune, comme une route qui se divise en deux.

Par exemple, si les membres d'une équipe d'un site populaire de contenu sur les cryptomonnaies se disputaient sur l'orientation du site, un groupe pourrait décider de reproduire le site sur un autre domaine et de publier un contenu différent de l'original.

Dans l'univers de la blockchain, il existe deux types de forks : les hard forks et les soft forks. Bien que ces termes soient propres à la blockchain, le forking existe dans le développement logiciel bien avant l'apparition de cryptomonnaies comme Bitcoin ou Ethereum.

Hard fork

Les hard forks surviennent dans une blockchain lorsqu'il existe un désaccord fondamental au sein de la communauté sur la direction du protocole. Ils apparaissent lorsqu'une nouvelle règle est introduite dans le code de la blockchain qui n'est pas compatible avec les anciennes règles. Cela peut créer une divergence dans l'historique de la blockchain, aboutissant à deux chaînes séparées, chacune avec sa version de la blockchain. Les raisons les plus courantes d'un hard fork incluent un désaccord sur des changements logiciels, des préoccupations de sécurité et la congestion du réseau. 

Les hard forks sont des mises à jour logicielles non rétrocompatibles, et les nouveaux nœuds ne peuvent se connecter qu'avec d'autres nœuds utilisant la nouvelle version. En conséquence, la blockchain se scinde et deux réseaux émergent : l'un avec les anciennes règles et l'autre avec les nouvelles règles.

Après le fork, l'historique de la blockchain reste identique jusqu'au point de divergence. Cependant, des blocs et des transactions différents sont ajoutés aux deux réseaux, créant des systèmes parallèles. Si un individu possédait 5 BTC lorsqu'un fork s'est produit au bloc 600 000, il pouvait les dépenser sur l'ancienne chaîne, mais il conserverait toujours cinq pièces sur la nouvelle blockchain s'il gardait ses clés privées.

Un exemple de hard fork est celui de 2017 sur Bitcoin, qui a abouti à deux chaînes distinctes : l'original Bitcoin (BTC) et le nouveau Bitcoin Cash (BCH). Le fork résultait d'un désaccord sur la meilleure approche pour le scaling. Les partisans de Bitcoin Cash voulaient augmenter la taille des blocs, tandis que les défenseurs de Bitcoin s'y opposaient. En conséquence, certains nœuds n'acceptaient que des blocs inférieurs à 1 Mo. Cependant, si des nœuds avaient mis à jour leur logiciel pour accepter des blocs plus grands, seuls ces nœuds partageant les mêmes modifications auraient pu communiquer entre eux, les rendant incompatibles avec la version précédente.

Soft fork

Les soft forks sont un type de mise à niveau d'un réseau blockchain qui est rétrocompatible. Cela signifie que les nœuds mis à jour peuvent toujours communiquer avec ceux qui ne l'ont pas été. Les soft forks sont généralement implémentés pour améliorer le réseau blockchain, comme réduire la taille des blocs ou ajouter de nouvelles fonctionnalités. Ils peuvent aussi servir à corriger des vulnérabilités de sécurité ou d'autres problèmes.

Par exemple, réduire la taille des blocs peut être réalisé via un soft fork. Bitcoin illustre bien ce scénario. Même s'il existe une limite à la taille maximale d'un bloc, il n'y a pas de limite à la taille minimale. Ainsi, si vous souhaitez n'accepter que des blocs de petite taille, vous pouvez rejeter les blocs plus grands. Cette action ne vous déconnectera pas du réseau, mais vous filtrerez certaines informations que les nœuds n'ayant pas implémenté ces règles peuvent vous envoyer.

Segregated Witness (SegWit) est un exemple emblématique de soft fork. Il est intervenu après la scission Bitcoin/Bitcoin Cash. SegWit était une mise à jour bien conçue qui modifiait le format des blocs et des transactions. Cependant, les nœuds anciens pouvaient toujours vérifier les blocs et les transactions car le format ne violait aucune règle. Ils ne comprendraient pas certaines données, puisque certains champs ne sont lisibles que lorsque les nœuds passent à un logiciel plus récent leur permettant d'analyser des données supplémentaires.

Deux ans après l'activation de SegWit, pas tous les nœuds n'avaient été mis à jour, même s'il y avait des avantages à le faire. Toutefois, il n'y avait pas d'urgence puisque rien ne risquait de casser le réseau.

Quel est le meilleur choix — hard forks ou soft forks ?

Il existe deux principaux types de forks dans le monde de la blockchain, et ils servent des objectifs différents. Les hard forks contentieux peuvent créer des divisions au sein d'une communauté, tandis que les hard forks planifiés offrent la liberté de modifier le protocole avec l'accord de toutes les parties concernées.

Les soft forks, en revanche, sont une option plus douce. En général, ils sont plus limités dans ce qu'ils peuvent accomplir, car les nouvelles règles ne doivent pas entrer en conflit avec les anciennes. Cependant, si une mise à jour est conçue de manière à rester compatible avec les anciennes règles, il n'y a pas de risque de scission du réseau.

Les soft forks sont préférés aux hard forks car ils sont moins perturbateurs pour le réseau blockchain. Avec un soft fork, le réseau reste intact et les nœuds non mis à jour peuvent toujours participer. À l'inverse, un hard fork crée un nouveau réseau blockchain incompatible avec la version précédente. Cela peut entraîner une division de la communauté et la création de deux cryptomonnaies distinctes.

Conclusion

L'importance des hard forks et des soft forks ne peut être sous-estimée dans le contexte des réseaux blockchain. Ces mécanismes nous permettent d'implémenter des changements et des améliorations dans des systèmes décentralisés, où aucune autorité centrale n'existe.

Les forks jouent un rôle vital pour permettre aux blockchains et aux cryptomonnaies d'intégrer de nouvelles fonctionnalités au fur et à mesure de leur développement. Sans ces mécanismes, il nous faudrait un système centralisé avec un contrôle descendant, ce qui limiterait notre capacité à faire évoluer le protocole. Grâce aux hard forks et aux soft forks, nous disposons de la flexibilité nécessaire pour adapter et améliorer le réseau blockchain au fil du temps.

Hard Fork
Soft Fork