Témoin non standard lors de la construction d'une transaction
j'essaie de passer une entrée multisig P2WSH 2of2 en Python à des fins d'apprentissage. Lorsque je vérifie mon TX assemblé avec testmempoolaccept, j'obtiens « mauvais témoin non standard ».
C'est ma fonction de rassembler le témoin :
msg) for priv in privs]
fromhex(« 00 ») pour sig dans sigs : témoin += len(sig) « little ») + sig musig_script = b » » op2 = bytesfromhex(« ae ») musig_script += op2 pour la clé dans les privilèges : key = get_pub_from_priv(key) musig_script += bytesto_bytes(1
Voici comment j'ai assemblé le hachage d'engagement :
code de script : octets « little ») résultat += dsha256(outpoint) # hashPrevouts résultat += dsha256(bytes « little ») + scriptcode else : résultat += résultat du scriptcode += value « little ») résultat += bytesfromhex(« 01000000 ») return dsha256(result)
Voici la transaction d'origine de l'UTXO :
Voici les clés privées (signet privé) en hexadécimal avec lesquelles signer :
ré
Quelqu'un peut-il voir une erreur évidente ici, en supposant que sign() et les clés données sont correctes, ou donner un indice sur la façon de vérifier moi-même le résultat ?