Hard fork et soft fork, et ce que chacun change pour un mineur
La différence tient à ce que le logiciel non mis à jour accepte encore ou non les nouveaux blocs. Cette seule réponse décide de tout le reste.
Un fork est un changement de règles, rien de plus dramatique
Une blockchain est un ensemble de règles dont tout le monde exécute la même copie. Un fork, c'est ce qui se passe quand ces règles changent. Le mot évoque une crise, et la plupart des forks sont de la maintenance de routine que personne à part les développeurs ne remarque.
Une seule question sépare les deux types, et toutes les autres différences en découlent : le logiciel qui n'a pas été mis à jour accepte-t-il encore les blocs créés avec les nouvelles règles ?
Hard fork : les règles s'assouplissent, l'ancien logiciel refuse
Un hard fork autorise quelque chose que les anciennes règles n'autorisaient pas. Peut-être un bloc plus grand, un nouveau type de transaction, un calendrier de récompenses différent. Comme les nouveaux blocs font quelque chose d'interdit auparavant, le logiciel resté sur les anciennes règles les examine et les rejette comme invalides.
C'est ce qui le rend incompatible avec les versions précédentes, et c'est pourquoi un hard fork exige que tout le monde bouge en même temps. Si tout le monde met à jour, il n'y a qu'une chaîne et le changement entre simplement en vigueur. Si un groupe important ne le fait pas, il y a deux chaînes à partir de ce bloc, chacune valide selon ses propres règles et chacune ignorant l'autre.
Soft fork : les règles se durcissent, l'ancien logiciel est d'accord
Un soft fork interdit quelque chose que les anciennes règles autorisaient. Les nouveaux blocs sont un sous-ensemble de ce qui était déjà valide, donc l'ancien logiciel les examine, ne trouve rien à redire et les accepte. Personne ne se retrouve hors de la chaîne pour avoir refusé de mettre à jour.
Le piège joue dans l'autre sens. Un mineur resté sur l'ancien logiciel peut produire un bloc correct selon les anciennes règles mais contraire aux nouvelles, plus strictes, et la majorité à jour le rejettera. Le bloc n'arrive pas simplement en retard : il est écarté, avec tout ce qui a été dépensé pour le trouver.
C'est pourquoi les soft forks ne s'activent normalement que lorsqu'une large majorité du hashrate signale qu'elle est prête. La mise à jour est coordonnée pour que la minorité restée en arrière soit assez petite pour s'en rendre compte vite et changer.
Ce qu'une scission signifie vraiment pour vos paiements
Si une chaîne se scinde vraiment, deux choses se produisent qui comptent davantage pour un mineur que la politique expliquant pourquoi elle s'est scindée.
Le hashrate se répartit entre les branches, donc chacune est moins sûre que la chaîne unique, et chacune a des blocs plus lents jusqu'à ce que la difficulté s'ajuste. Cet ajustement prend du temps, et pendant ce temps une branche avec une petite part du hashrate peut produire des blocs très, très lentement.
L'autre est que vos cryptomonnaies existent sur les deux branches, car les deux partagent l'historique jusqu'à la scission. Savoir si la seconde branche vaut quelque chose est une question de marché, et souvent la réponse est : très peu. Les plateformes d'échange sont généralement prudentes avec les dépôts autour d'un fork, à garder en tête si vous comptiez vendre.
Les forks qui créent une nouvelle cryptomonnaie, et les autres
La plupart des forks changent une chaîne et laissent une chaîne. Les exceptions célèbres sont celles où un groupe a délibérément maintenu les anciennes règles en vie comme une cryptomonnaie à part, d'où sont nées plusieurs cryptomonnaies très connues.
Une distinction utile : une mise à niveau du réseau planifiée que tout le monde adopte est un hard fork au sens technique et ne produit aucune nouvelle cryptomonnaie. La mise à niveau est le but, et le fork n'est que le mécanisme. Seul un fork où deux groupes continuent de construire laisse deux cryptomonnaies derrière lui.
La règle pratique pour un mineur
Vous n'avez pas besoin de suivre le débat. Vous devez faire tourner le logiciel qui fait tourner la chaîne sur laquelle vous êtes payé, et savoir quand il change.
- Suivez le canal d'annonces de la cryptomonnaie elle-même pour connaître les hauteurs d'activation. Un fork se produit à une hauteur de bloc annoncée, pas à une heure annoncée, et c'est ce nombre qu'il faut noter.
- Si vous minez dans un pool, le pool fait tourner le nœud et s'occupe de la mise à jour. Votre logiciel de minage n'est pas concerné dans le cas normal, car on vous envoie du travail ; vous ne validez pas de blocs.
- Si vous minez en solo sur votre propre nœud, mettre ce nœud à jour est votre affaire, et le faire en retard signifie miner une chaîne que personne n'accepte.
- Autour d'un fork controversé, attendez-vous à ce que votre estimation de gains soit fausse pendant un temps. La difficulté, le prix et la chaîne suivie par le pool peuvent changer dans la même semaine.