Une mise à jour importante du réseau est en cours. Tous les Bakers et tous les Noeuds doivent appliquer un patch correctif appelé « Protocol 003_PsddFKi3« . Si vous êtes utilisateur, détenteur d’un wallet XTZ et/ou déléguez vos XTZ à un Baker, aucune action n’est requise. Le patch ne concerne que les Noeuds et les Bakers.

Contexte

Ce patch intervient suite à un arrêt du réseau. Il a été provoqué par une défaillance lors de la révélation du nonce. Un baker a été sanctionné pour double baking, suivi d’une autre sanction qui ne pouvait pas s’appliquer et qui bloquait le bon déroulement du protocole. (cf paragraphe ci-dessous : Gestion des erreurs lors de la révélation du nonce).

Grâce à la participation de nombreux Bakers et développeurs, le problème a été rapidement identifié et la situation a été vite  résolue. Le protocole a pu reprendre quelques heures après la survenance de cette défaillance. Ci-dessous, vous trouverez les différents correctifs compris dans ce patch.

Description du patch

Correctif pour prévenir la création de comptes de type spam

Actuellement la création de compte KT1 a un coût fixe pour l’utilisateur car elle consomme 0.257 tez (a.k.a « origination fee »). Cependant, ce coût ne concerne que les comptes KT1 et non les comptes tz1. Autrement dit, la création de compte tz1 (« Main account ») est gratuite. Pourtant un compte tz1 occupe bien un espace mémoire au sein de la blockchain. Laisser la création de compte tz1 gratuite revient à donner l’opportunité de saturer l’espace mémoire, sans aucun coût. Ce correctif permet de remédier à cette potentielle vulnérabilité, en imposant le coût de 0.257 tez, à la fois pour les compte KT1 mais aussi pour les tz1.

Gestion des erreurs lors de la révélation du nonce

Au cycle 48, un baker a réalisé un double baking. En ce sens, il a utilisé ses droits de baking pour créer 2 blocs sur 2 chaînes différentes. Cette action est punie par le protocole, par la perte du dépôt de garanties et des récompenses de blocs. Le baker a donc été économiquement sanctionné en perdant son dépôt de garanties et ses récompenses.

Le protocole aurait pu continuer son chemin si ce baker avait injecté le nonce comme prévu. Cependant, ce baker n’a pas révélé le nonce aux autres bakers. Ce nonce est nécessaire car il contient les exigences du prochain bloc (et ainsi de suite). La révélation est une opération récompensée, et ne pas révéler ce nonce est aussi sanctionné par le protocole, par le retrait des récompenses de blocs. Vous voyez le problème ?

Les récompenses de blocs étaient déjà retirées du Baker, par la sanction du double baking. C’est pourquoi la sanction de « non-révélation » du nonce, ne pouvait pas s’appliquer sur les récompenses de blocs. Ainsi, la deuxième sanction, forçait le protocole à tenter de retirer des récompenses déjà retirées par une première sanction. La deuxième sanction ne pouvant pas s’appliquer, le nonce n’était pas révélé. Par conséquent, aucun nouveau bloc ne pouvait être accepté tant que le nonce n’était pas révélé. Le correctif garantit le bon traitement de ce scénario.

Ajout des RPC pour voter

Ce correctif introduit les RPC pour interroger le statut du bulletin de vote, fonctionnalité nécessaire aux bakers pour interagir avec les propositions d’amendements du protocole. La liste est disponible ici.

Meilleure comptabilité des Rolls pour le vote d’approbation

Le protocole actuel ne compte pas correctement les Rolls pendant la phase d’approbation du vote. C’est désormais corrigé dans cette version.

Conclusion

Ce patch est aussi une bonne occasion, non seulement pour corriger la situation, mais aussi pour prévenir de potentielles vulnérabilités ou préparer les améliorations à venir. Si vous souhaitez plus de détails sur l’application ou le contenu de ce patch, n’hésitez pas à consulter la source ci-dessous.

Source :

Tezos Gitlab


0 commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *