Segwit2x : ce que vous devez savoir

36
784

Traduction [1] d’un article de Jimmy Song, « early adopter » et entrepreneur du Bitcoin : « Bitmain a encore fait beaucoup de bruit la semaine dernière en publiant les plans d’un « hard fork » destiné à contrer le BIP 148 [2] si cette proposition gagnait du terrain. Dès le lendemain, l’équipe de Segwit2x implémentait le code permettant rendre son logiciel client compatible avec le BIP 91 [3]. Le jour suivant, un groupe de mineurs chinois a publié à son tour un communiqué de presse annonçant qu’ils commenceraient à signaler à Segwit2x à partir du 19 juin.

Dans cet article, j’ai l’intention de revenir sur les événements des cinq derniers jours et d’expliquer comment les choses vont se dérouler dans les prochains temps. J’espère du même coup vous éclairer sur le fonctionnement du BIP 91, sur la façon dont Segwit sera activé et sur les mesures à prendre pour éviter une scission au 1er août […].

Bitmain déclare préférer l’accord de New York à tout « hard fork » et souhaiterait que Segwit2x (alias « New York Agreement ») s’active avant le BIP 148. La principale raison, c’est peut-être que Segwit2x implique Segwit et que, si Segwit est verrouillé sur le réseau, le BIP 148 n’aura aucun effet.

Alors, naturellement, vous vous demandez peut-être comment Segwit2x va s’activer ? C’est une question plus délicate qu’il ne semble.

 

Le mécanisme d’activation de Segwit2x

L’accord original de New York prévoit ceci :

Le communiqué de presse ne donne pas vraiment de détails techniques sur l’activation de Segwit en dehors du passage entouré de rouge ci-dessus. Notez que la proposition Segwit originale, le BIP 141, requiert un seuil de 95% et est signalé au bit 1 [4] . Les deux BIP sont évidemment différents, si bien que la communauté se demande légitimement si les deux signaux sont compatibles. Est-il possible de signaler Segwit2x et pas BIP 141 ou vice versa ? Qu’arrivera-t-il, par exemple, si Segwit2x réussit à activer Segwit, mais que les nœuds exécutant BIP 141 considèrent qu’il n’est pas actif  ?

Pour résoudre ces problèmes, un mécanisme intelligent a été proposé (curieusement le 22 mai, la veille de la publication de l’accord de New York) par James Hilliard sur la liste de diffusion « Bitcoin Devs ». C’est ce mécanisme, maintenant appelé BIP 91, qui nous amène à la suite.

 

Fusionner les deux mécanismes d’activation de Segwit

Le BIP91, une manière intelligente de transformer 80% en 95% de signalisation, procède ainsi :

– La signalisation au bit 1 ou au bit 4 est acceptée.

– Si 269 sur 336 blocs signalent l’un des bits, le BIP 91 est verrouillé.

– Après 336 blocs supplémentaires, BIP 91 est activé.

– Lorsque BIP 91 est actif, les blocs ne signalant pas le bit 1 (c’est-à-dire Segwit par le BIP 141) sont rejetés du réseau.

Cette situation devrait vous sembler familière : c’est exactement ce que fait le BIP148. En raison de cette « signalisation forcée », la chaîne adoptera à 100% le BIP 141 et Segwit sera verrouillé puis activé. La différence entre le BIP 91 et le BIP 148 c’est que le BIP 91 nécessite le consentement préalable de 80% des mineurs.

Ce qui s’est passé jeudi dernier c’est que le BIP 91 a été intégré dans le code de Segwit2x pour s’assurer que Segwit s’active si la proposition obtient le soutien de 80% des mineurs.

 

La résolution issue de la table ronde des mineurs

Le lendemain, les mineurs chinois ont publié un communiqué de presse pour déclarer qu’ils exécuteraient Segwit2x. Comme le code n’est pas prêt, ils ne signalent ni le bit 1, ni le bit 4 mais mentionnent « NYA » [New York Agreement] dans leurs blocs [5]. Ces mineurs, qui représentent environ 80% de toute la puissance de hachage, signaleront donc très probablement le bit 4 dès que Segwit2x sera prêt.

 

Qu’est-ce que cela signifie pour vous ?

Voici ce qu’il faut faire pour éviter une scission au 1er août :

1. Le logiciel Segwit2x doit être publié et rester entre les mains des mineurs.
2. Au moins 269 des 336 blocs doivent signaler le bit 1 ou le bit 4 (environ 80%) afin de verrouiller le BIP 91.
3. Il faudra attendre 336 blocs supplémentaires [environ 2 jours et demi] pour permettre l’activation du BIP 91. A partir de ce moment, chaque bloc devra signaler le bit 1 (Segwit / BIP141).

Si tout ce qui précède se produit avant le 1er août, le BIP 148 n’aura aucun effet et aucune scission ne se produira. Ce qui n’est toujours pas clair, c’est ce qui se passera si nous ne sommes qu’à l’étape 2 au 1er août. Les supporters du BIP 148 considéreront-ils cela comme une avancée suffisante pour suspendre leur UASF ? Probablement, mais jusqu’à présent, les partisans de BIP 148 ne l’ont confirmé dans aucune déclaration. Il serait probablement dans l’intérêt de tous que les partisans de BIP 148 le précisent le plus tôt possible.

 

Mais ce n’est pas fini…

Voilà donc un développement positif pour tous ceux qui souhaitent éviter une division permanente, car avec un tel scénario Bitcoin restera sur une seule chaîne. Mais la bataille n’est pas terminée pour autant. La question plus large et plus controversée d’un « hard fork » pour des blocs à 2 Mo doit encore être réglée.

Selon l’accord de New York , un tel « hard fork » doit être activée dans les six mois. Mais quel est le client qui activera le « hard fork » à 2 Mo ? Est-ce que ce sera Bitcoin Core ? Peu probable, car aucun des développeurs n’a signé l’accord. Celui de l’équipe de Segwit2x ? Possible, mais comment ça va se dérouler ? […] Si c’est un client différent de Bitcoin Core, est-ce que les signataires de l’accord de New York l’exécuteront ? Comment les référentiels seront-ils gérés ? Les développeurs de Bitcoin Core seront-il impliqués ou non ? Segwit2x pourrait-il intégrer Core ? Que se passe-t-il si Core le rejette ?

Aucune de ces questions n’a encore de réponse. Nous ne sommes pas encore sortis de l’auberge.

 

Conclusion

Les étapes franchies au cours de la dernière semaine semblent indiquer que Segwit sera activé et qu’on évitera une scission du réseau le 1er août. Ce sont de bonnes nouvelles, mais à plus long terme la question de savoir s’il y aura ou non un « hard fork » pour des blocs plus volumineux est toujours sans réponse. Il y a de la place pour l’optimisme, mais il y a encore bien des batailles à mener.

 

Source : medium.com

A voir également l’intervention de Jimmy Song sur Epicenter Bitcoin :


[1] Avertissement : il s’agit d’une traduction non-professionnelle. En cas de doute veuillez consulter le texte original.

[2] Un BIP (Bitcoin Improvement Proposal) est une proposition d’amélioration de Bitcoin.

[3] BIP 91 permet de déployer Segwit avec une puissance de hachage de 80%.

[4] Bit : espace dans l’entête d’un bloc de transaction réservé au signalement des BIPs.

[4] A voir à ce propos : Proportion des blocs signalant un soutien à l’accord de New York.