Le rapport indique aussi que les sorties v2 sont rejetées par joinpsbts, une RPC qui n’accepte que les fichiers v0. Les logiciels de signature externes pourraient rencontrer des difficultés similaires s’ils ne prennent pas en charge la v2.

GitHub affiche une étiquette source finale v32.0 vérifiée et signée, datée du 21 octobre. La page officielle de téléchargement indiquait encore la version 31.1 lors de la vérification du 22 octobre. L’étiquette seule ne doit donc pas être considérée comme la confirmation que les binaires 32.0 sont disponibles.

Le mainteneur fanquake a reporté le problème de compatibilité à la version 32.1 le 21 octobre, indiquant que la version 32.0 était attendue depuis longtemps et qu’aucun correctif n’était encore prêt à être rétroporté. La demande de fusion 36539 propose de rétablir les PSBT créés dans l’interface graphique au format v0 et était toujours ouverte lors de la vérification du 22 octobre. La couverture par CryptoSlate de la version candidate de septembre avait signalé les changements apportés aux formats par défaut des RPC. Le report du correctif de l’interface graphique est l’évolution ultérieure.

Comment éviter l’incompatibilité de format PSBT

Les cosignataires utilisant des versions différentes peuvent choisir le format v0 lors de la création du fichier via l’interface RPC de Core 32, en utilisant psbt_version=0 avec walletcreatefundedpsbt ou createpsbt. Les tests fonctionnels de la version v32.0 couvrent les deux versions de format et vérifient que la sortie décodée correspond à la version demandée.

La BIP 370 permet également de convertir un PSBT v2 existant en v0 en reconstruisant sa transaction non signée, mais ne fournit pas elle-même de commande à exécuter par l’opérateur.