Fork

Fork

Un fork est une évolution d’un logiciel. Il existe des soft forks et des hard forks.

Qu’est-ce qu’un fork ?

Un fork est une évolution d’un logiciel. Il existe des soft forks et des hard forks.

Classiquement, un fork signifie le développement d’un logiciel open source. Comme les logiciels à source ouverte sont par nature librement accessibles à tous, chacun a la possibilité de faire sa propre copie du logiciel et de la modifier à ses propres fins. Cette scission du logiciel original est également appelée fork.

La modification du logiciel ne doit en aucun cas être considérée comme une intervention malveillante, mais comme un élément élémentaire et souhaitable des projets open source. Les utilisateurs ayant des connaissances en programmation peuvent ainsi ajouter de nouvelles fonctionnalités en fonction de leurs propres besoins. En outre, cela permet de faire coexister différentes distributions d’un même logiciel.

Quel est le rapport entre les forks et les blockchains ?

Le code informatique d’une **chaîne de blocs publiquecomme Bitcoin, est open source et peut être modifié par les développeurs, comme décrit ci-dessus.être modifié localement par les développeurs.

Cependant, les systèmes de blockchain se composentpas seulement de code informatique, mais aussi d’un réseau de participants quiexécutent le code sur leurs ordinateurs. Pour que le réseau ne se divise pas,tout le monde doit être d’accord avec les modifications. Par conséquent, il n’est pas possible pourun programmeur inexpérimenté ou un attaquant malveillant, de modifier les règles du réseau sans se faire remarquer.modifier les règles du jeu du réseau.

En pratique, cela se présente comme suit :

  • Il existe uneversion de Bitcoin généralement reconnue.
  • Les utilisateurs souhaitentde nouvelles fonctionnalités, par exemple une augmentation de la taille des blocs, afin de résoudre les problèmes de capacité.résoudre des problèmes.
  • Un utilisateur copiele logiciel Bitcoin actuel et modifie les règles de manière à ce que les blocs plus grands soientles blocs soient reconnus comme valides.
  • Il met le logiciel à dispositionlogiciel à d’autres utilisateurs qui peuvent également l’utiliser.
  • Il existe maintenant deuxversions du logiciel Bitcoin sur le réseau et les utilisateurs peuvent choisir,laquelle ils souhaitent utiliser. Les utilisateurs votent en utilisant la version 1 ou la version 2.en utilisant la version 2.

Types de forks

Il est important de différencierentre les forks logiciels et les forks de la blockchain. Les forks se distinguent notamment par leurtype de leur *impact sur le logiciel existant ou sur le réseau de forks.Le logiciel de la chaîne de blocs doit être classé en fonction de l’impact qu’il a sur le réseau de la chaîne de blocs :

Forks logiciels

Lors d’un software fork, le code existant est copié, éventuellement modifié, puis réimporté. Un logiciel fork a donc son propre début, son propre bloc Genesis.

Litecoin est un exemple de software fork. Litecoina pris le code de Bitcoin, a modifié certains paramètres (quantité de monnaie plus élevée, temps de bloc plus court, etc.temps de bloc, etc.), et a commencé avec un nouveau bloc Genesis. Cela signifie que quiconqueavait auparavant du Bitcoin, n’avait toujours que du Bitcoin. Le Litecoin n’était donné qu’auxceux qui participaient activement au réseau Litecoin et extrayaient la crypto-monnaie.

Un autre exemple de fork logiciel est Monero. Le siteLa construction théorique de Monero a été utilisée pour la première fois dans Bytecoin.Cependant, après quelque temps, il s’est avéré que le Bytecoin était une fraude.était une tentative de fraude et que plus de 80 % de la masse monétaire était déjà en circulation.se trouvait sur le marché (Premine). Le projet Monero a alors copié le code informatique et a lancé le projet.a redémarré le réseau avec une distribution équitable. Là aussi, un nouveau générateurMonero a créé son propre bloc Genesis.

Même si Litecoin présente de nombreuses similitudes avec Bitcoin et queMonero fonctionne fondamentalement comme Bytecoin, les projets sont interdépendants.indépendants et il n’y a pas de chevauchement du réseau. S’il s’agit d’unOn reconnaît généralement un fork logiciel en regardant la blockchainet le bloc Genesis.

Blockchain Forks

Il en va autrement desBlockchain Forks ou ce que l’on appelle les Chain Splits. Lors d’un chain split, unechaîne de blocs existante – et le réseau – est divisé. Une chaîne de blocs devient deux chaînes de blocs.devient deux blockchains. Les deux chaînes de blocs ont la même origine, le même bloc Genesis.

Un exemple est la bifurcationdu réseau Bitcoin le 1er août 2017. À cette époque, la communauté Bitcoin se disputaitcommunauté se disputait la échelle du réseau. Une partie voulaitvoulait changer d’échelle en dehors de la blockchain, l’autre voulait augmenter la taille des blocs.augmenter l’échelle et ainsi passer à l’échelle sur la blockchain. Le 1er août 2017, ce conflit a atteint son apogée.a abouti au fait que les représentants des blocs plus grands se sont retirés du réseau bitcoin existant.réseau Bitcoin se sont isolés. La chaîne de blocs Bitcoin s’est soudainement transformée en deux.deux : l’ancienne blockchain Bitcoin et la nouvelle blockchain Bitcoin Cash. Bitcoinet Bitcoin Cash ont eu complètement la même histoire jusqu’au 1er août, maisdepuis cette date, les réseaux ne sont plus compatibles entre eux.

Lors d’un tel chain splitil se passe quelque chose de remarquable : celui qui, avant le fork, possédait déjà par exemple du Bitcoindétenait deux actifs après le hard fork – les actifs de l’ancienne chaîne.chaîne et les actifs de la nouvelle chaîne. En août 2017, l’ancien actifBitcoin et le nouveau Bitcoin Cash. Celui qui avait 10 Bitcoin le 31 juillet avait 10 Bitcoin le1er août 10 Bitcoin et 10 Bitcoin Cash.

Tous les fork de blockchain ne doivent pasimpliquer un « chain split ». Un chain split ne se produit que lorsqu’il y a deuxcamps qui ne peuvent pas se mettre d’accord sur un état actuel du réseau (donc sur un bloc).un bloc commun).

Qu’est-ce qu’un hard fork ?

Pour comprendre, il est important de,de connaître la fonction d’un nœud. Explication rapide : les nœuds, en tant quenœuds de réseau la blockchain et la mettent à disposition du réseau. Le sitel’historique le plus récent des transactions est stocké sur tous les nœuds et doncdécentralisé.Pour que tous les nœuds du réseau puissent se mettre d’accord surpeuvent s’entendre sur la même blockchain valide, ils doivent être équipés d’unêtre exploités par un logiciel compatible.

Dans l’abstrait, unhard fork est une mise à jour non rétrocompatible des règles de consensus.Cela semble simple, mais qu’est-ce que cela signifie ? En bref : celui qui participe au hard forksouhaite participer, doit se conformer aux nouvelles règles. Tous les utilisateurs qui continuent àcontinuent à suivre les anciennes règles ne font pas partie du nouveau réseau. L’unanimitéavec les nouvelles règles est symbolisée dans le cosmos de la blockchain par unlogiciel. Pour « se conformer aux nouvelles règles », les participants doivent mettre à jour leur logiciel de cryptographie.mettre à jour leur logiciel de cryptographie. Il peut s’agir d’un Wallet ou d’un miningclient. Le nouveau logiciel se conforme automatiquement aux nouvelles règles.

[Boîte de définition] Un fork dur est une modification des règles qui n’autorise pas la rétrocompatibilité. Les événements qui n’étaient pas valides auparavant le sont désormais. C’est pourquoi la blockchain se divise en cas de hard fork. L’ancienne blockchain continue d’exister sous les anciennes règles.

Important : la participation à un forkd’un hard fork est « opt-in », c’est-à-dire qu’il faut entreprendre quelque chose de manière active.accepter activement les nouvelles règles de consensus. Tous ceux qui ne mettent pas à jour sont laissés sur unesont laissés sur une ancienne chaîne.

Végétarien à mangeur de viande = Hard Fork

Considérons un hard forkloin du bitcoin et de la blockchain, à l’aide d’un exemple tiré du monde analogiquemonde :

Imaginons un groupe devégétariens qui se mettent collectivement d’accord sur la règle (de consensus) « nous ne mangeons pas de viandese mettent d’accord sur la viande« . Maintenant, une partie du groupe change d’avis et veut manger de la viande.consomme également de la viande. Les personnes se regroupent et décident,de procéder à un hard fork. « Nous mangeons aussi de la viande » est le nom de la nouvelle règle.règle. Bien entendu, les personnes ne téléchargent pas de logiciel.Dans l’exemple, la mise à jour serait plutôt l’idée « on a le droit de manger de la viande« .Néanmoins, l’analogie tient la route : Celui qui met à jour ses règles n’est pasplus compatible avec l’ancien protocole (ou : l’ancien ensemble de règles). Unvégétarien refuserait toujours un repas avec de la viande.

Un hard fork implique un chain split

Encore une autrecaractéristique d’un hard fork : la blockchain se divise. Une hard forkest activé à partir d’une certaine hauteur de bloc. Mieux : dans le nouveau logicielil y a la condition « Quand le bloc numéro X arrive, respecte les nouveauxrègles« . C’est l’une des raisons pour lesquelles le logiciel doit être mis à jour.doit être mis à jour. Cette condition signifie qu’à partir du bloc X, les nouvelles règles s’appliqueront.règles s’appliquent. Celui qui s’en tient aux anciennes règles au moment du bloc X reste sur une chaînesur une ancienne chaîne. L’ancien logiciel ne reconnaît pas le bloc X comme étant valable.et le rejette pour cette raison. Le réseau est alors en désaccord. Tous lesles nœuds mis à jour considèrent le bloc X comme valide ; tous les anciens nœuds rejettent le bloc Xsont rejetés. En cas de hard fork, ces deux réseaux se séparent à jamais.Les chemins sont différents.

C’est aussi la raison pour laquelle lesles doublons de pièces. Celui qui avait de l’argent sur l’ancienne chaîne – avant le hard fork – en a toujours sur la nouvelle.cet argent sur le nouveau fork ; et toujours sur l’ancien. Le nombre dedes tokens a en quelque sorte doublé. Cela n’implique pas quele prix double – en fait, il devrait d’abord être divisé par deux.après un hard fork.

Le chain split n’a pas lieun’a théoriquement pas lieu si tous les participants sont d’accord.c’est-à-dire qu’ils exécutent le même logiciel. Mais dès qu’une seule personne se trouve sur lareste dans l’ancienne chaîne, l’ancienne chaîne continue d’exister. Il y a alors unChain Split.

Exemples connus de hard forks

Nous présentons ici deuxexemples connus de hard fork dans l’industrie de la cryptographie :

Ethereum : avec le DAO-Hack, plus de 150 millions d’euros ont été perdus.de dollars américains « perdus ». La Fondation Ethereum a décidé de remonter le temps.de revenir en arrière – avant que le hack ne se produise. Ce n’était pas conforme aux règlesrègles de consensus de l’ETH. Un hard fork a dû être introduit. Ethereum (ETH) estla nouvelle chaîne depuis cette époque ; Ethereum Classic (ETC) est l’ancienne chaîne qui a subi leDAO hack n’a pas été annulé.

Bitcoin Cash : pour la mise à l’échelle de la blockchain, Bitcoin a demandé l’augmentation des blocs.Unlimited l’augmentation de la taille des blocs. Les règles de consensus limitaient la taille des blocs àtaille des blocs en Bitcoin à 1 Mo. Bitcoin Cash (BCH) est un hard fork qui aa notamment augmenté ce paramètre ; Bitcoin (BTC) est l’ancienne chaîne(angl. = Legacy Chain).

Que l’on soit végétarien ou carnivore,c’est à chacun de prendre sa décision. Ce qui est important : le logiciel détermine,quelles règles on suit. En principe, l’utilisateur n’a pas à prendre de décisionprendre une décision. Avec la technologie blockchain, on peut aussi danser sur les deux balles.Pour cela, il faut exploiter simultanément les deux versions du logiciel.

Qu’est-ce qu’un soft fork ?

En termes simples, un soft estfork est un changement rétrocompatible dans les règles de consensus. Ce n’est pas l’ensemble duréseau doit participer à un soft fork, le consensus n’est pas rompu.n’est pas rompu.

[Boîte de définition] Un Soft Fork rétrécit l’ensemble des règles. Ce qui était autorisé auparavant ne l’est plus maintenant. C’est pourquoi un soft fork est rétrocompatible, car les soft forkers peuvent toujours participer à l' »ancien système ».

Végétarien à végétalien = soft fork

Illustrons cette idéedéfinition avec notre exemple précédent – le groupe des végétariens. La règle du consensusest assez simple : « Nous ne mangeons pas de viande« .Maintenant, une partie du groupe change d’avis et souhaite devenir végétalien, c’est-à-dire renoncer à certains produits.c’est-à-dire qu’il renonce à certains produits végétariens. La règle devientplus strict. Du point de vue des végétariens, les végétaliens continuent à respecter la règle.respectent la règle de ne pas manger de viande.

En d’autres termes, les végétalienspeuvent toujours exister dans le système consensuel des végétariens – tous les aliments végétaliensaliments sont également autorisés pour les végétariens. Cela signifie que le passage devégétarien à végétalien est rétrocompatible. En revanche, il est possibleles mangeurs de viande *ne sont pas dans leexister dans le système consensuel des végétariens.

Tandis qu’un hard fork divise laun soft fork utilise la même blockchain que l' »ancien système ».système ». Cela signifie également que les utilisateurs ne doivent pas mettre à niveau leur logiciel. Dans la plupart des cas, les modifications apportées par unsoft fork apportent certes des améliorations au réseau, mais il appartient auxparticipants de décider s’ils veulent réellement utiliser ces modifications. Celui quiSi l’utilisateur souhaite utiliser les nouveautés, il donne son accord – comme pour le hard fork – sous forme d’un logiciel.sous la forme d’un logiciel mis à jour.

Comme la blockchain ne se divise pasDans le cas d’un soft fork, il n’y a pas de bifurcation (mais seulement un niveau supplémentaire).Il n’y a pas non plus de duplication de coins.

Exemple connu de soft fork

En 2017, le réseau Bitcoin a connuréseau Bitcoin a connu un soft fork – Segregated Witness (en abrégé : SegWit). SegWit a comblé une lacunede Bitcoin – la malléabilité des transactions.de la technologie dite second layer.(le réseau lumineux)a été rendue possible.

SegWit enregistre les signatures(witnesses) des transactions – c’est-à-dire la partie d’une transaction quivérifie que l’émetteur dispose de l’argent – ne se trouve plus dans le block-body,mais séparément (Segregated). Une transaction dans SegWit est donc plus petite – et donc plus avantageuse.et donc moins chère.

Tous lesLes participants au réseau Bitcoin qui n’ont pas effectué la mise à jour vers SegWit peuvent encoreparticiper au consensus et vérifier les blocs. Ainsi, SegWit estest rétrocompatible ; un exemple parfait de soft fork.

Les végétariens peuvent aussi manger végétalienPour la viande, il faut toutefois un hard fork des règles de consensus.Règles de consensus.

Pour comprendre les hard forks et les soft forkscomprendre, retenons

« Dans un hard fork*, quelque chose d’illégal est autorisé.chose qui n’était pas autorisée auparavant « .

« Dans uneforce douce*, quelque chose de précédemment autorisé est interdit ».

Discussion : Les hard forks sont-ils meilleurs que les soft forks ?

La question cruciale du monde de la cryptographie est : « Alors, dis-nous comment tu t’en sors avec les hard forks?« ,car les hard forks divisent littéralement les communautés.

A l’un des extrêmes, la position selon laquelle le bitcoin, dans sa versionforme originale représente la seule blockchain légitime. Toute tentative ded’un hard fork détruirait cette forme immuable et mettrait fin à unecaractéristique fondamentale de Bitcoin.

L’autre extrême est la position selon laquelle les hard forksreprésentent de « l’argent gratuit » et peuvent être utilisés à volonté.En 2017, il s’agissait d’un procédé très apprécié pour gagner de l’argent rapidement.hard forks avec une modification minimale.

Si le nouvel actif est listé sur une bourse, on espère queon espère une augmentation de la valeur de la somme des deux crypto-monnaies. Théoriquementla valeur d’une crypto-monnaie ne devrait pas augmenter suite à un hard fork. Toutefois,dans la réalité, les marchés se révèlent souvent plus inertes ou irrationnels qu’on ne le pense.et les cours ne se stabilisent qu’après un certain temps.

Un argument de premier plan contre les hard forks et la « gratuité » est la sécurité.argent est lié à la vie privée des utilisateurs. Celui qui accède aux deux versions d’uneaccède à une blockchain divisée pourrait restreindre sa vie privée.

D’un autre côté, les hard forks sont également sujets à des erreursvulnérables. Rappelons qu’un hard fork autorise des choses qui étaient auparavant interdites.étaient autorisées, le sont désormais. Ainsi, des bugs peuvent apparaître dans le protocole logiciel.qui n’existaient pas auparavant.

Les hard forks peuvent être utilisés pour des mises à jour de grande envergure. De nouvelles fonctions sont ainsi ajoutées au protocole. Pour cela, il est toutefois nécessaire d’avoir une large approbation de la communauté. Dans le cas d’un tel hard fork, la masse du réseau doit y participer pour que l’ensemble du réseau soit mis à jour. S’il s’agit d’un hard fork controversé, c’est-à-dire d’une modification des règles du consensus qui n’est pas acceptée par le grand public, le réseau peut rencontrer des problèmes.

C’est justement dans les grands réseaux, comme Bitcoin par exemple,de tels hard forks coordonnés sont difficiles. Le débat sur le changement d’échelle de 2017 et dedes années précédentes a démontré cette difficulté. Au lieu d’unehard fork généralement accepté, le réseau Bitcoin a réalisé un soft forka été effectué. Dans le même temps, un hard fork a eu lieu, au cours duquel Bitcoin s’est séparé du réseau.Cash s’est séparé du réseau Bitcoin.

Les hard forks nécessitent l’accord explicite des participants au réseau, alors qu’un soft fork peut être introduit sans cet accord explicite. Cette circonstance est à l’origine de la critique des soft forks. On reproche aux soft forks de modifier le réseau en secret, car un soft fork ne nécessite pas d’accord. Ainsi, un soft fork infiltrerait le réseau et pourrait à long terme contraindre les autres mineurs à mettre à jour leur logiciel.

Termes associés

  • Transaction Bitcoin.
  • Block
  • Block Explorer.
  • Block Reward.
  • Blockchain contrôlé par un réseau informatique public distribué (en anglais « distributed »). (voir aussi : technologie du ledger distribué). On distingue les blockchains publiques (public ou permissionless) et les blockchains privées (private ou permissioned) »).
Token Boost

Commencez à trader dès maintenant

Investissez dans les cryptos et trader vos devises numériques sur les différentes plateformes.

Laisser un commentaire

Crypto logo

Token Boost, votre e-magazine français 100% crypto & DeFi.

Contact

54, impasse Toussaint, Lorainville