Préparatifs pour le Hard Fork de Nimiq 2.0 Albatross

Traduction de l’article publié en anglais sur le blog officiel de la team Nimiq

Plans pour le processus de hard fork de Nimiq 2.0

Comme vous le savez déjà tous, Nimiq 1.0 va passer à Nimiq 2.0 dans un avenir proche. Avec cette mise à jour majeure, la blockchain Nimiq passera de Proof-of-Work à Proof-of-Stake avec un nouvel algorithme de consensus très performant, ainsi que la nouvelle courbe d’émission du NIM récemment votée.

Le passage à Nimiq 2.0 se fera par le biais d’un « hard fork » et dans cet article de blog, nous allons exposer nos plans concernant l’ensemble du processus de transition vers le hard fork.

Puisque Nimiq 2.0 aura un algorithme de consensus complètement différent de Nimiq 1.0, la seule façon de faire la transition est d’arrêter la blockchain Nimiq 1.0 et de démarrer la blockchain Nimiq 2.0. Pour ce faire, nous devrons introduire un soft fork dans Nimiq 1.0, obtenir des validateurs pour Nimiq 2.0 et enfin créer un bloc genesis pour démarrer la blockchain Nimiq 2.0, comme décrit plus en détail dans les sections suivantes.

Nimiq 1.0 Soft Fork

La première étape sera de faire un soft fork sur Nimiq 1.0. L’objectif principal de ce soft fork étant de nous donner la possibilité d’arrêter la blockchain Nimiq 1.0 plus tard, lorsque nous en aurons besoin. Nous avons choisi un soft fork activé par le mineur, plutôt qu’un soft fork activé par l’utilisateur, car c’est le souhait de la communauté. De plus, un soft fork activé par le mineur est beaucoup plus simple à réaliser. Donc, après avoir publié le nouveau client avec le soft fork, les mineurs signalent qu’ils ont installé le nouveau client en écrivant des données dans le champ « extra data » du corps du bloc pour tous les blocs qu’ils minent.

Nous pouvons estimer le pourcentage de la puissance de hachage qui a installé la nouvelle version en voyant, par exemple, combien des 1000 derniers blocs comportent le signal. Lorsque ce pourcentage atteint un seuil prédéterminé, le fork est activé. Ceci ne doit pas être interprété comme un vote des mineurs car la décision de passer à Nimiq 2.0 a déjà été prise par l’écrasante majorité de la communauté. Au contraire, les mineurs signalent simplement qu’ils sont prêts pour le soft fork.

L’activation du soft fork ne va rien changer au départ, la blockchain continuera de se comporter normalement. La principale différence est que les mineurs seront maintenant en mesure de recevoir un signal de l’équipe Nimiq et lorsque ce signal sera envoyé, tous les mineurs qui ont installé le nouveau client arrêteront de miner – plus de détails à ce sujet dans les prochaines sections.

Bien sûr, nous ne pouvons pas forcer chaque mineur à installer le nouveau client et les mineurs qui ne l’installent pas continueront à produire des blocs même après que tous les autres se soient arrêtés. Jusqu’à la date du hard fork, nous ne saurons pas si quelqu’un prendra la peine de continuer à exécuter l’ancien protocole. Malgré ça, le fait que la communauté, l’équipe de développement et les exchanges soient engagés dans cette mise à niveau de Nimiq, garantie qu’il n’y est aucune incitation raisonnable à la poursuite de l’ancien protocole.

Validateurs pour Nimiq 2.0

Pour lancer la blockchain 2.0, le bloc genesis (voir ci-dessous) sera signé par un ensemble de validateurs contrôlés par l’équipe. Mais à partir de ce moment-là, nous voulons avoir des validateurs issus de la communauté. Pour que cela soit possible, le bloc genesis doit déjà contenir une liste de validateurs potentiels, c’est-à-dire des personnes qui ont staké des fonds et qui sont prêtes à produire des blocs. Nous devrons donc permettre aux gens de devenir validateurs avant même que la blockchain Nimiq 2.0 ne démarre.

Pendant un laps de temps entre l’introduction du soft fork sur Nimiq 1.0 et la date du hard fork, tout détenteur de NIM pourra signaler son intention de devenir un des premiers valideurs sur la blockchain Nimiq 2.0. Cela sera très similaire à la façon dont le vote de la courbe d’émission s’est déroulé: en envoyant une simple transaction de 1 Luna (0,00001 NIM) à une adresse prédéterminée.

Mais toute personne souhaitant être l’un des premiers validateurs sur Nimiq 2.0 devra remplir quelques conditions supplémentaires. Certaines d’entre elles sont nécessaires en raison du protocole lui-même – par exemple, staker un minimum de 10’000 NIM et soumettre la clé publique du validateur – tandis que nous en imposerons d’autres pour garantir que tous les validateurs seront en ligne et prêts lorsque la blockchain Nimiq 2.0 démarrera – par exemple, faire tourner un nœud de validateur sur le Testnet pendant une période suffisamment longue. L’ensemble exact des conditions n’a pas encore été décidé mais sera partagé avec la communauté en temps voulu.

Les chanceux qui passeront avec succés ce processus de sélection seront inclus dans le bloc genèse, et deviendront les premiers validateurs de Nimiq 2.0, entrant ainsi dans l’histoire ! Nous tenons à souligner que ce processus plus centralisé et restrictif ne s’applique qu’aux validateurs de cette toute première époque. Toute personne souhaitant « valider » sur Nimiq 2.0, mais ne souhaitant pas passer par ce processus, peut simplement attendre le démarrage de Nimiq 2.0 et placer ses fonds à ce moment-là. Les validateurs à partir de la deuxième époque seront entièrement choisis par le protocole et sans aucune intervention de l’équipe Nimiq.

Remarque : les 10 000 NIM mentionnés ci-dessus s’appliquent uniquement aux stakers qui utilisent leur propre validateur. Il n’y aura pas de minimum prédéterminé pour la délégation de staking, mais le propriétaire d’une pool de staking peut choisir d’en fixer un.

Nimiq 2.0 Genesis

Après la mise en place du soft fork sur Nimiq 1.0 et la sélection des validateurs pour Nimiq 2.0, nous sommes prêts à lancer le hard fork. Il se déroulera en trois phases.

Phase 1

Il y aura un signal sur la blockchain Nimiq 1.0. Ce signal sera simplement une transaction envoyée depuis une adresse contrôlée par l’équipe Nimiq qui a été hard-codée dans le soft fork. Lorsque cette transaction sera minée, un compte à rebours sera lancé. À la fin du compte à rebours, la phase 2 débutera.

L’objectif de la phase 1 est d’avoir du temps pour d’éventuelles dernières modifications avant la mise à jour de la blockchain.

La durée du compte à rebours n’est pas encore fixée, mais elle devrait être d’une à deux semaines.

Phase 2

Lorsque la phase 2 commencera, toutes les transactions seront suspendues. Plus aucune transaction, de quelque sorte qu’elle soit, ne sera autorisée (à l’exception du bloc reward). Cela aura pour effet de geler les fonds de tout le monde. Ensuite, un deuxième compte à rebours commencera, mais celui-ci sera beaucoup plus court, entre 20 et 30 minutes.

L’objectif de la phase 2 est de finaliser l’état de la blockchain Nimiq 1.0. Comme le Proof-of-Work a une finalité probabiliste, nous devons attendre plusieurs blocs jusqu’à ce que nous soyons certains qu’il n’y ait pas de bloc annulé. Et nous devons savoir avec certitude quel est l’état de la blockchain 1.0 afin de pouvoir la transférer à la blockchain 2.0 mise à jour.

À la fin du compte à rebours, la phase 3 commencera.

Phase 3

Les mineurs vont cesser la production de blocs, ce qui aura pour effet l’arrêt de la blockchain Nimiq 1.0. Au même moment, l’équipe Nimiq prendra le dernier bloc produit et fera un snapshot de son état. Cette capture sera utilisée via un outil automatisé, que nous créerons et mettrons en libre accès au préalable, pour créer le bloc genèse de la blockchain Nimiq 2.0.

Le bloc genèse sera ensuite diffusé sur le réseau et reçu par ceux qui auront été sélectionnés pour être les premiers validateurs de Nimiq 2.0. Ces validateurs commenceront alors à produire des blocs: Nimiq 2.0 sera né !

L’équipe Nimiq est très enthousiaste et travaille dur pour atteindre cet objectif. Connectez-vous sur nos réseaux sociaux pour obtenir toutes les dernières mises à jour vers Nimiq 2.0 !

DISCLAIMER: Aucune des déclarations ne doit être considérée comme une approbation ou une recommandation pour Nimiq, une crypto-monnaie ou un produit d'investissement. Ni les informations, ni les opinions contenues dans ce document ne constituent une sollicitation ou une offre par les créateurs ou participants d'acheter ou de vendre des titres ou d'autres instruments financiers ou de fournir des conseils ou des services d'investissement.