Topics BlockchainCurrent Page

Explication : Qu'est-ce qu'une fourchette souple et comment fonctionne-t-elle ?

Beginner
Blockchain
Mar 19, 2021
lecture de 8 minutes

Résumé IA

Afficher plus

Survole le contenu de l’article et évalue le sentiment du marché en 30 secondes chrono !

Résumé détaillé

Si vous vous intéressez auxcryptomonnaies,vous avez peut-être entendu parler de ce qu'on appelle les « forks ». En termes simples, une bifurcation (fork) est une modification du protocole d'une blockchain qui a été approuvée par ses participants. 

Cela peut se produire pour diverses raisons, et elles peuvent être classées en fourches souples etfourches dures

Dans cet article, nous aborderons le concept de soft fork sur une blockchain : son fonctionnement, son activation, quelques exemples et la différence entre un soft fork et un hard fork.

En ce qui concerne le Bitcoin, et d'autres cryptomonnaies, une bifurcation douce se produit lorsque la chaîne de cryptomonnaie subit une « divergence temporaire ». Un soft fork est une modification du protocole logiciel qui invalide uniquement les blocs ou transactions précédemment valides.

Lors d'une mise à jour logicielle (soft fork), les modifications apportées sont rétrocompatibles — ce qui signifie que les anciens nœuds peuvent toujours ajouter de nouveaux blocs à la blockchain, à condition qu'ils respectent les nouvelles règles. Les règles de la blockchain sont appelées protocole blockchain. 

Examinons et clarifions le concept de soft forks en relation avec le protocole blockchain.

Qu'est-ce qu'un protocole blockchain ?

Une blockchain peut être définie comme un registre public et distribué, qui enregistre les transactions sur un réseau mondial d'ordinateurs connectés appelés nœuds. Tous les nœuds sont égaux et connectés entre eux via Internet. Sur le réseau, tous les nœuds participants doivent vérifier une transaction avant qu'elle ne soit ajoutée à la blockchain. 

Une blockchain fonctionne généralement selon des règles prédéfinies appelées protocoles blockchain, sur lesquelles tous les pairs (nœuds) participants du réseau s'accordent. Ces règles sont les suivantes :

  1. Instructions pour l'authentification et la gestion des transactions sur le réseau

  2. Un algorithme définissant le mécanisme par lequel tous les nœuds participants du réseau interagiront entre eux.

  3. Une interface de programmation d'application (dans certains cas)

Dans le cadre de ce protocole, une bifurcation logicielle (soft fork) est une modification du protocole logiciel qui invalide uniquement les blocs de transactions précédemment valides. Étant donné que les anciens nœuds reconnaîtront les nouveaux blocs de la blockchain comme valides, une bifurcation logicielle est considérée comme rétrocompatible.

Les soft forks sont souvent utilisés comme l'option la plus courante pour mettre à jour une blockchain Bitcoin, car ils présentent un risque réduit de perturbation du réseau. De plus, contrairement à une bifurcation dure, une bifurcation douce ne nécessite que la mise à jour de la majorité des mineurs pour imposer les nouvelles règles.

Parfois, une bifurcation logicielle peut également survenir en raison d'une différence momentanée dans la blockchain, lorsque des mineurs utilisant des nœuds non mis à jour enfreignent une nouvelle règle de consensus que leurs nœuds ne connaissent pas. Si les nœuds non mis à niveau continuent à miner des blocs, ces derniers seront rejetés par les nœuds mis à niveau.  

L'autre type de bifurcation qui peut survenir est appelé bifurcation dure (hard fork), qui est une modification du protocole exigeant que tous les nœuds du réseau mettent à jour leur logiciel vers la dernière version afin de continuer à participer au réseau. Contrairement à une mise à jour logicielle (soft fork), une mise à jour matérielle (hard fork) empêche les nœuds de la version mise à jour de la blockchain d'accepter les anciennes règles ; seules les nouvelles règles sont appliquées. 

Fourches souples vs. Fourches rigides

Les hard forks et les soft forks sont similaires en ce qu'ils modifient tous deux le code existant de la plateforme de cryptomonnaie. Bien que les forks durs et les forks souples soient tous deux essentiels au fonctionnement continu et à la gouvernance efficace des réseaux blockchain, il existe des différences fondamentales entre eux.

Tout d'abord, une mise à jour logicielle (soft fork) a pour conséquence qu'une seule blockchain reste valide à mesure que de plus en plus d'utilisateurs passent à la version mise à jour. Il s'agit essentiellement d'une mise à jour progressive de la blockchain. Cependant, lors d'une bifurcation dure (hard fork), les anciennes et nouvelles blockchains coexistent, ce qui signifie que le logiciel doit être mis à jour pour fonctionner selon les nouvelles règles. Il s'agit essentiellement d'une transition soudaine vers la blockchain. Ainsi, même si les deux types de forks entraînent une sorte de scission, un soft fork maintient une seule blockchain, tandis qu'un hard fork entraîne la division d'une blockchain en deux. 

Par conséquent, à cet égard, la principale différence entre un soft fork et un hard fork réside dans le degré d'importance de la mise à jour du logiciel des nœuds pour une participation continue au réseau.

La plupart des développeurs optent pour une bifurcation dure (hard fork) lorsqu'il s'agit d'effectuer une mise à jour majeure de sécurité sur une blockchain. Même si elle implique le déploiement d'une plus grande puissance de calcul, une bifurcation dure est considérée comme beaucoup moins risquée à cet égard. 

Les hard forks peuvent résulter d'une division au sein de la communauté d'une blockchain, comme ce fut le cas avec le hard forkde Bitcoin Cashen 2018. Elle est née de désaccords au sein de la communauté blockchain Bitcoin concernant la taille des blocs et l'évolutivité. À l'inverse, les soft forks peuvent généralement être résolus par un accord mutuel et reflètent un sentiment plus unifié au sein de la communauté d'une blockchain. 

Comment fonctionnent les fourches souples ?

Comme décrit en détail dans la section précédente, une bifurcation logicielle se produit en raison d'une modification rétrocompatible du protocole logiciel. Par conséquent, la nouvelle chaîne bifurquée respecte les nouvelles règles tout en respectant les anciennes. En substance, la chaîne d'origine continue de suivre les anciennes règles.

Les nouvelles transactions sont généralement des soft forks supplémentaires, qui nécessitent uniquement que les participants (destinataire et expéditeur) ainsi que les mineurs appréhendent le nouveau type de transaction. Cela implique de faire apparaître le nouveau type de transaction aux clients précédents (transaction de paiement à n'importe qui) et de convaincre les mineurs de rejeter les anciens blocs, y compris ces transactions, sauf lorsque la transaction corrobore les nouvelles règles.

Pour qu'une bifurcation logicielle puisse être mise en œuvre, la plupart des mineurs doivent exécuter un client reconnaissant la bifurcation. En bref, plus les mineurs respecteront les nouvelles règles, plus le réseau post-bifurcation sera sécurisé. Par exemple, si les ¾ des mineurs reconnaissent la bifurcation, rien ne garantit que le ¼ restant suivra les nouvelles règles. Elles resteront toutefois valides pour les anciens nœuds qui ignorent encore les nouvelles règles, mais seront ignorées par les nouveaux nœuds.

En ce qui concerne les mises à jour, les soft forks n'ont pas besoin que les nœuds soient mis à jour pour maintenir le consensus. En effet, tous les blocs intégrant les nouvelles règles de fork souple suivent également les règles précédentes. C'est pourquoi les clients précédents les acceptent. 

Cependant, une fourche rigide est nécessaire pour inverser le fonctionnement des fourches souples. En effet, une bifurcation souple ne fait que certifier que les ensembles de blocs valides constituent un sous-ensemble approprié de ce qui était valide avant la bifurcation. Si les utilisateurs passent à un client post-soft fork, et que par la suite une majorité décide de revenir au client pré-soft fork, les utilisateurs du client post-soft fork perturberaient l'harmonie de la blockchain dès l'introduction d'un bloc ne respectant pas les nouvelles règles de leurs clients.

Pourquoi les fourches se ramollissent-elles ?

Vous avez probablement compris à présent que la fourche souple est unemodification purement esthétique. Elle modifie ou ajoute des fonctions sans interférer réellement avec la structure de la blockchain et peut se produire pour diverses raisons, telles qu'un changement d'algorithme de consensus ou des modifications/mises à jour logicielles.

Lorsqu'une majorité de mineurs lors d'une mise à jour du réseau utilisent leur puissance de hachage pour appliquer les nouvelles règles, on parle alors d'une mise à jour logicielle activée par les mineurs (MASF).

Il existe également une soft fork activée par l'utilisateur (UASF). C’est ici que les nœuds complets se coordonnent pour appliquer les nouvelles règles, sans le soutien des mineurs. 

Une bifurcation logicielle peut également survenir en raison d'une divergence temporaire dans la blockchain, où les mineurs utilisant des nœuds non mis à jour enfreignent une nouvelle règle d'accord que leurs nœuds ne connaissent pas.

Exemples de fourchettes souples

Les soft forks sont l'option la plus courante pour mettre à jour les blockchains Bitcoin, car elles sont considérées comme présentant un risque moindre de division du réseau. Parmi les précédents exemples de soft forks réussis, on peut citer les mises à jour logicielles telles queBIP 66(traitant de la validation des signatures) et P2SH (modification du formatage des adresses Bitcoin).

  1. Les BIP (34, 65 et 66) ont été installés sur la blockchain Bitcoin par le biais de la signalisation des mineurs utilisant le nombre de versions de blocs. En résumé, de nouvelles règles de consensus ont été proposées pour une utilisation dans les blocs ayant un numéro de version supérieur à celui de la version de bloc actuellement utilisée sur le réseau. 

  2. P2SHou PAY-TO-SCRIPT-HASH était un correctif ajouté à la blockchain Bitcoin en 2012, modifiant la façon dont elle validait les transactions. Il est le plus souvent reconnu comme une adresse Bitcoin, commençant par un « 3 » au lieu d'un « 1 ».

  3. SegWit, ou SEGREGATED WITNESS, était une bifurcation logicielle utilisée pour augmenter la vitesse des transactions Bitcoin. Étant donné qu'un nouveau bloc de transactions est extrait toutes les 10 minutes en moyenne, l'idée de base était d'augmenter le nombre de transactions pouvant être incluses dans chaque bloc. SegWit libérerait de l'espace dans chaque bloc, qui pourrait ensuite être utilisé pour inclure davantage de transactions. Cela a été réalisé en supprimant la clé publique du bloc, ainsi que la signature associée à chaque transaction, et en les envoyant via un canal de messagerie différent. Étant donné que la clé publique et la signature occupent près de 60 % de la taille totale de la transaction, leur envoi séparé pourrait doubler le nombre de transactions dans chaque bloc. C’est pourquoi cette approche a été appelée « Témoin séparé » puisque le « témoin » (signature) était séparé (envoyé séparément) de la transaction.

Conclusion

Les forks offrent à un réseau blockchain la possibilité de se mettre à jour tout en ajoutant des fonctionnalités accrues aux cryptomonnaies existantes, telles que des fonctionnalités de mise à l'échelle tout aussi importantes pour l'adoption. Les soft forks ont souvent été utilisés dans les blockchains Bitcoin pour implémenter des règles nouvelles et améliorées ainsi que des algorithmes rétrocompatibles.

Mais les difficultés résident davantage dans la mise en œuvre de cette approche que dans son principe. Par conséquent, des processus de gouvernance efficaces sont la clé de leur mise en œuvre.

Recevez votre dose quotidienne d'informations sur les crypto et le trading.

Pas de spams. Seulement du contenu agréable et des mises à jour de l'industrie dans l'espace crypto.

    roadmap