Hard Fork & Soft Fork – Une explication simple (2 exemples concrets)

21 janvier 2019 - 18:06

Temps de lecture : 5 minutes

Le terme fork est régulièrement employé dans l’univers des cryptomonnaies. Comme d’autres nombreuses expressions, elle peut vous sembler vague ou mystérieuse, voire même incompréhensible. En effet, il est possible que vous vous interrogiez : « Mais qu’est-ce donc que ce mot bizarre, un fork ? Et à quoi cela correspond? ». CryptoActu a décidé de vous aiguiller pas à pas sur le sujet.

Un fork se traduit de la langue de Shakespeare par fourchette. Quel est le rapport avec les cryptomonnaies et la blockchain ?

Bitcoin fork

Quel rapport entre une fourchette et le Bitcoin ?

Rappel important avant de rentrer dans le vif du sujet :

La blockchain (également nommé chaîne de blocs) est une méthode de stockage et de transmission d’informations, transparente, très sécurisée, et fonctionnant sans organe central de contrôle. Cependant, c’est une technologie qui est soutenue, mise à jour et continuellement améliorée par une équipe de développeurs. C’est donc une base de donnée qui peut être amenée à évoluer au fil du temps.

Explication d’un fork

En réalité, le terme fork peut également s’interpréter en tant qu’embranchement et c’est plutôt cette traduction qui nous intéresse. Ce terme est utilisé depuis de nombreuses années dans le domaine informatique. Wikipédia le définit de cette manière :

Un fork (terme anglais signifiant « fourche », « bifurcation », « embranchement ») est un nouveau logiciel créé à partir du code source d’un logiciel existant lorsque les droits accordés par les auteurs le permettent : ils doivent autoriser l’utilisation, la modification et la redistribution du code source. C’est pour cette raison que les forks se produisent facilement dans le domaine des logiciels libres.

 

Dans certains cas, les développeurs d’une blockchain souhaitent apporter des modifications à celle-ci. En effet, dans le but d’améliorer les performances de ladite blockchain ou de réaliser des corrections, des mises à jour sont à effectuer. Les développeurs vont volontairement changer les règles du protocole.

Pour cela, les concepteurs doivent s’occuper de réviser et modifier son code. En altérant celui-ci, une nouvelle version de la blockchain est créée. On se retrouve donc avec deux versions d’une même blockchain initiale d’où le terme fork et cette idée de divergence exprimée avec la division en plusieurs branches.

Ce principe s’explique car lorsqu’on réalise une mise à jour de la blockchain, l‘ancienne version de celle-ci ne disparaît pas, elle existe toujours. Si le Bitcoin subit une mise à jour, il y aura deux versions du Bitcoin et donc deux chaînes de blocs. 

Parfois, elles resteront compatibles. Dans d’autres cas, les deux versions créées seront discordantes et cela entraînera l’existence de deux cryptomonnaies différentes. C’est ce qui va expliquer la distinction entre un soft fork et un hard fork.

En d’autres termes, lorsque les développeurs d’une blockchain choisissent d’en changer le code source, il y a création d’une nouvelle version de celle-ci. On appelle le processus un fork. Il en résultera soit deux versions assimilables (une seule cryptomonnaie au total), soit qui ne sont plus compatibles (et donc l’instauration d’une seconde cryptomonnaie).

Hardfork Bitcoin

Image représentant métaphoriquement un fork du Bitcoin

Le Soft Fork

Un soft fork sera utilisé pour une mise à jour mineure. Les anciens blocs resteront acceptables avec les nouvelles règles créées. On dit que la modification est rétro-compatible. La version antérieure de la blockchain fonctionnera toujours avec la dernière version de celle-ci. De nombreux embranchements de ce type ont déjà été effectués sur le Bitcoin.

Pour une évolution de cet ordre, un certain niveau de consensus doit être adopté par les mineurs. En général, il faut que la majorité d’entre eux adhèrent aux nouvelles règles. Pour citer quelques softs forks qui ont eu lieu sur le protocole Bitcoin, on peut évoquer le BIP 66 ou le P2SH (Pay to Script Hash) qui a permis d’implémenter le système de multi-signatures.

On peut assimiler cela à une simple mise à jour. Votre smartphone va mettre à jour votre système d’exploitation, mais il n’y aura pas besoin de changer de téléphone pour utiliser ce SE, ici le principe est le même.

Le Hard Fork

Un hard Fork va au contraire concerner un changement majeur. Il va permettre de réaliser d’importants remaniements de la blockchain. Il nécessite donc un très large consensus chez les développeurs et la communauté. Les nouvelles règles ne seront plus compatibles avec celles préalablement utilisées.

Il peut être planifié ou controversé. Il est planifié si la majorité de la communauté suit le protocole choisi et met à niveau son logiciel. C’est le système qu’utilise actuellement Ethereum dans son évolution du plan Casper (avec Byzantine, Constantinople etc…)

S’il est controversé, il y a division et donc création de deux chaînes de blocs qui correspondront à deux cryptomonnaies différentes. Cela arrivera généralement lorsque la communauté se fractionne et qu’une partie de celle-ci veut créer une nouvelle version de la blockchain. Les exemples qui suivent sont des hard fork controversés.

Exemple concret #1 : Ethereum et Ethereum Classic

Tout commence mi-2016, plus particulièrement, le 17 Juin qui est le théâtre du hack du projet TheDAO.

TheDAO était un smart contract (contrat intelligent) extrêmement populaire à l’époque. En d’autres termes, un programme informatique déployé sur la blockchain Ethereum. Le projet était celui d’une plateforme de financement participatif. Il fallait envoyé des tokens ETH (Ethereum) pour pouvoir se procurer des tokens TheDAO en échange. Ceux-ci permettaient d’avoir un droit de vote au sujet des subventions et des investissements de projets.

Cependant et à cause d’une faille dans le code du smart contract, un pirate a réussi à dérober 3,6 millions d’Ethers. C’est la catastrophe pour l’ensemble de la communauté. La panique s’empare des forums et des espaces d’échanges publics.

L’idée de réaliser un fork est proposée, puis acceptée. Il permettra de revenir à l’état de la blockchain avant le hack et donc de « rembourser » les personnes qui se sont malheureusement fait voler leurs ETH.

Et c’est là qu’une discorde apparaît dans la communauté. Alors que de grands noms du projet (Vitalik Buterin) soutiennent l’initiative du nouvel ETH, une minorité souhaite garder la blockchain initiale (qui a subi le piratage) au nom de l’idéologie et des valeurs des cryptomonnaies. Cette portion de la communauté voulait conserver la chaîne de blocs originelle, en hommage aux idées des cypherpunks.

La supporters de l’ETH furent donc divisés via un hard fork. La majorité de celle-ci a migré vers une nouvelle blockchain qui est l’actuelle Ethereum. Alors qu’au contraire, certains puristes continuent d’utiliser la première version de la chaîne de blocs qui est maintenant l’Ethereum Classic.

Exemple concret #2 : Bitcoin et le Bitcoin Cash

soft fork and hard fork

– A noter que de nombreux autres forks du Bitcoin ont été réalisés en 2018 comme celui du Bitcoin Gold, ou du Bitcoin Private. –

L’un des forks les plus connus est celui du Bitcoin avec le Bitcoin Cash. Il est plus récent puisqu’il a eu lieu le 1er Août 2017.

Pour faire simple, certains membres Bitcoin ont considéré qu’activer Segwit sans augmenter la taille des blocs était une erreur. Ils se sont regroupés et ont créé le projet Bitcoin Cash qui multiplie par 8 les blocs passant de 1 à 8 Mo.

Ce qu’il s’en est suivi est un hard fork du Bitcoin qui a créé deux cryptomonnaies distinctes : Le Bitcoin et le Bitcoin Cash. Chaque possesseur de BTC se voyait attribuer l’équivalent en BCH. Le Bitcoin Cash est le résultat de discordances dans la communauté Bitcoin.

La nouvelle cryptodevise devient donc incompatible avec la version initiale du Bitcoin. En effet, les blocs ont des tailles différentes et ne peuvent donc pas être utilisés sur la même blockchain, il y a scission. Il est, en effet, impossible d’envoyer du Bitcoin sur un wallet Bitcoin Cash par exemple.

Conclusion

Les Hard Forks sont souvent légitimes et permettent à un projet d’évoluer positivement ainsi que de se perfectionner. C’est par exemple ce que réalise Ethereum avec son plan Casper et l’arrivée très prochaine de Constantinople.

Il faut cependant rester prudent et se renseigner continuellement. En effet, certains forks ne sont considérés que comme de simples copies du Bitcoin qui profitent du fameux nom pour son aspect marketing. On a notamment pu observer une recrudescence des Bitcoin Gold, Bitcoin Private, Bitcoin Diamond, BitcoinX et de nombreux autres.

 

[siteorigin_widget class= »WP_Widget_Custom_HTML »][/siteorigin_widget]

Recevez le top 3 de l'actualité crypto chaque dimanche