Pourquoi le script d'entrée de mon PSBT n'a-t-il pas de clé de publication ?
J'ai créé un PSBT pour signer un HTLC en utilisant un P2WSH financé, que je souhaite signer avec mon portefeuille xverse. Ceci est mon PSBT décodé que j'ai créé en utilisant Bitcoin-cli
o @ oscarpc: ~ / bitcoin-htlc $ bitcoin-Cli -testnet decodepsbt chnidp8baf4caaaaBpl7v1jyb + 3r1ucjz59ivvarjkc / + 7bfxva0qdjwjy + aaaaaad + /// aqaaaaaaaaaaaa Ksipe + zpsliz0whdvreu + maaaaaaaebk + gdaaaaaaaaigagpgjnxrbdib0mctfhbicxzdnaivuwckozt5f + fzv3hmobbvljqcblH3GH9MMMIKWTTLKCMDLYR6GPAYQUIC Ky1caykt8lrgz / axpo34gcasxv2qrtjmqvstky1caykt8lrgz / axpo34giiraaa {"tx": {" txid": "a1eaefe490f5d3be11fbd6a5afeffcff20a9e92cfde3363484168c9f5769c57a", "hash": "a1eaefe490f5d3be11fbd6a5afeffcff20a9e92cfde3363484168c9f5769c57a", " : 2, "taille" : 94, "vsize" : 94, "poids" : 376, "locktime" : 0, "vin" : [
{
"txid": "be9cc0e300d1c01b7fdbeeff1c99acc0fb8a7d9e8d025547b7bfc9635dedcbb3",
"vout": 0,
"scriptSig": {
"asm": "",
"hex": ""
},
"sequence": 4294967294
}
]"vout": [
{
"value": 0.00000000,
"n": 0,
"scriptPubKey": {
"asm": "1 988fa46449a345b974a03e854ea27b44a4a2a5ef99a522c8cf4c210d5ac4bbe3",
"desc": "rawtr(988fa46449a345b974a03e854ea27b44a4a2a5ef99a522c8cf4c210d5ac4bbe3)#4xpnet5r",
"hex": "5120988fa46449a345b974a03e854ea27b44a4a2a5ef99a522c8cf4c210d5ac4bbe3",
"address": "tb1pnz86gezf5dzmja9q86z5agnmgjj29f00nxjj9jx0fsss6kkyh03sjkqhpd",
"type": "witness_v1_taproot"
}
}
]
}, "global_xpubs" : [
]"psbt_version": 0, "propriétaire": [
]"inconnu": { }, "entrées": [
{
"witness_utxo": {
"amount": 0.00001000,
"scriptPubKey": {
"asm": "0 a608e7c6b6c3201d260931616c80b165d9c022fb960a4399b797fe7d95771cca",
"desc": "addr(tb1q5cyw034kcvsp6fsfx9skeq93vhvuqghmjc9y8xdhjll8m9thrn9q5mv0nr)#wjcfmgw8",
"hex": "0020a608e7c6b6c3201d260931616c80b165d9c022fb960a4399b797fe7d95771cca",
"address": "tb1q5cyw034kcvsp6fsfx9skeq93vhvuqghmjc9y8xdhjll8m9thrn9q5mv0nr",
"type": "witness_v0_scripthash"
}
},
"witness_script": {
"asm": "OP_IF OP_SHA256 652c7dc687d98c9889304ed2e408c74b611e86a40caa51c4b43f1dd5913c5cd0 OP_EQUALVERIFY OP_DUP OP_HASH160 e399056c4ca63571aca44fc2d11b3fdac69a37e0 OP_ELSE 0 OP_CHECKLOCKTIMEVERIFY OP_DROP OP_DUP OP_HASH160 e399056c4ca63571aca44fc2d11b3fdac69a37e0 OP_ENDIF OP_EQUALVERIFY OP_CHECKSIG",
"hex": "63a820652c7dc687d98c9889304ed2e408c74b611e86a40caa51c4b43f1dd5913c5cd08876a914e399056c4ca63571aca44fc2d11b3fdac69a37e06700b17576a914e399056c4ca63571aca44fc2d11b3fdac69a37e06888ac",
"type": "nonstandard"
}
}
]"les sorties": [
{
}
]"frais" : 0,00001000 }
J'ai l'intention de suivre cet exemple de sats-connect tiré de la documentation officielle de sats connect pour effectuer la signature à l'aide de mon portefeuille xverse :
importer { BitcoinNetworkType, RpcErrorCode, request, } depuis "sats-connect" ; constpsBtOptions = {upload: {Network: {Type: 'testnet}, psbtBase64: `chnidp8baf4caaaaabpl7v1jyb + 3r1ucjz59ivvarjkc / + 7bfxva0qdjwjy + aaaaaad + ///// aqaaaaaaaaaaaaaaaaad 0 ///// aqaaaaaaaaaaaaaaaaaaad0 J7RKSIPE + ZPSLIZ0WHDVREU + MAAAAAAAEBK + GDAAAAAAAAIGAGPGJNXRBDIB0MCTFHBICXZDNAIVUWCKOZT5F + QVSTKY1CAYKT8LRGZ / AXPO34GCASXV2QRTJMQVSTKY1CAYKT8LRGZ / AXPO34GIIRAAA`, ALLERDSIGNHASH: btc.SignatureHash.SINGLE | btc.SignatureHash.DEFAULT_ANYONECANPAY, diffusion : faux, inputsToSign : [
{
address: "tb1pnz86gezf5dzmja9q86z5agnmgjj29f00nxjj9jx0fsss6kkyh03sjkqhpd",
signingIndexes:
} ], }, onFinish : (réponse) => { console.log('PSBT signé :', réponse.psbtBase64); }, onCancel : () => alert('Signature annulée'), }; essayez { wait signTransaction (signPsbtOptions); } catch (erreur) { console.error('Erreur de signature PSBT :', erreur); }
Cependant, chaque fois que j'essaie de signer le PSBT à l'aide de mon portefeuille xverse depuis le navigateur, une erreur s'affiche :
Le script d'entrée n'a pas de pubKey : 99,168,32,101,44,125,198,135,217,140,152,137,48,78,210,228,8,199,75,97,30,134,164,12,170,81,196,180,63,29,213,145, 60,92,208,136,118,169,20,227,153,5,108,76,166,53,113,172,164,79,194,209,27, 63,218,198,154,55,224,103,0,177,117,118,169,20,227,153,5,108, 76,166,53,113,172,164,79,194,209,27,63,218,198,154,55,224,104, 136 172
Cela m'amène à ma question
Pourquoi mon script d'entrée PSBT n'a-t-il pas de clé de pub ? Dans la section des entrées du psbt décodé, il y a une section scriptPubKey à l'intérieur du champ de saisie.
