Canton corrige un risque de fourche

La version 3.5.5 corrige un bug rare mais sévère qui pouvait faire diverger des séquenceurs dans certains scénarios de mise à niveau.

Canton a publié la version 3.5.5 de son logiciel le 17 juin, avec une recommandation directe aux opérateurs : passer à cette version pour corriger un bug qualifié de rare mais sévère autour des mises à niveau de synchroniseur logique. Dans Canton, un synchroniseur coordonne l’ordre des événements entre participants d’un réseau Daml, la technologie de contrats intelligents utilisée par Digital Asset pour des infrastructures financières permissionnées. Le risque signalé est concret : dans certains scénarios de redémarrage après une mise à niveau, un nœud séquenceur pouvait provoquer une fourche de séquenceur, c’est-à-dire une divergence de l’état attendu par les participants.

La note de publication décrit précisément le cas. Si un séquenceur ne traite plus de blocs, puis redémarre après l’heure de mise à niveau avant d’avoir pu traiter un bloc, sa procédure de récupération peut supprimer des entrées de données de trafic. L’impact annoncé n’est pas cosmétique : les participants peuvent ne plus parvenir à se connecter, ou se déconnecter avec une erreur SEQUENCER_FORK_DETECTED. Le contournement mentionné par le projet est lourd, puisqu’il consiste à restaurer depuis une sauvegarde. La recommandation officielle est donc de mettre à niveau vers Canton 3.5.5.

L’intérêt dépasse la seule correction logicielle. Canton se positionne comme une couche d’infrastructure pour des registres partagés entre institutions, avec des déploiements qui privilégient la confidentialité, les permissions et l’interopérabilité entre systèmes financiers. Dans ce contexte, la tolérance aux incidents de coordination est faible : un bug de séquenceur ne menace pas seulement une application isolée, il peut bloquer des connexions entre participants qui doivent s’accorder sur le même historique. La publication précise que les versions antérieures à 3.5.5 sont affectées et que les nœuds séquenceurs sont le périmètre concerné.

La version ajoute aussi des améliorations plus ordinaires, comme une baisse de l’empreinte mémoire lors de grandes réponses gRPC et une option de configuration pour désactiver la connexion automatique aux synchroniseurs au démarrage. Mais le signal principal est ailleurs : les blockchains permissionnées et les registres distribués utilisés en finance avancent moins par slogans que par durcissement opérationnel. Une correction de bug peut paraître moins visible qu’un lancement de token ou une annonce de partenariat. Elle dit pourtant quelque chose d’important sur la maturité du secteur : les réseaux qui veulent porter des processus institutionnels doivent documenter les modes de panne, recommander des mises à jour datées et donner aux opérateurs des consignes explicites avant que l’incident ne devienne systémique.