Offline signing using third party libraries
MultiSig transaction signing failing with external third party BCH libraries (Bitcore-lib-cash). Is there any change in script for multisig tx ?, as the script verification is failing.
TEST DATA
Testing was performed on Regtest
LABEL | ADDRESS | TYPE |
---|---|---|
ALICE | bchreg:qplm52q9lw3zdu5aqqswxnxe96me88n3au7npya4mf | P2PK |
BOB | bchreg:qrurkpfs4caqh44j7vwnlp35wycqe7u46sn5wrvrfh | P2PK |
JACK | bchreg:qzkax53uaaq69ymzcy88ajh8wysmug9g9sex6vhc9a | P2PK |
ALICE + BOB + JACK | bchreg:ppl4wgkkz5qamtqfsmrukxgsghwyf3xlwqaeq9gjjt | P2SH |
Software Version
Name | Version |
---|---|
bitcore-lib-cash | 8.23.1 |
Bitcoin Cash Node | 22.2.0 |
Third party library code snippet is attached,bch.js
When trying to broadcast this signedrawtx using sendrawtransaction
in Bitcore, facing the below error.
Raw transaction:
0200000001a3ae614e4691a4b3132a3560c85bf391bc42cf0ff5aa9f457826982472ac7658000000006c004c695221025853088e55e081311361036b1109a05709231508b23a23c7139b92a2eb4bbe682102d76f699322b2ab86ec4e99269d36c89b9b93e1cbf883dadac4d02a6f720718e32103b767eb9668bc94c4b45f13f4b55694d397063d6eeeeae7158d36a3618aa95e9253aeffffffff02d0070000000000001976a91409e45eb409303ca0a01c29dad1fcf47839f607ce88ac2456052a0100000017a9147f5722d61501ddac0986c7cb191045dc44c4df708700000000
Decoded raw transaction:
{
"txid": "86ecc25d493e774602e0556a1a7dafb4c7c87e2a77d310402157214ce7c68748",
"hash": "86ecc25d493e774602e0556a1a7dafb4c7c87e2a77d310402157214ce7c68748",
"version": 2,
"size": 225,
"locktime": 0,
"vin": [
{
"txid": "5876ac7224982678459faaf50fcf42bc91f35bc860352a13b3a491464e61aea3",
"vout": 0,
"scriptSig": {
"asm": "0 5221025853088e55e081311361036b1109a05709231508b23a23c7139b92a2eb4bbe682102d76f699322b2ab86ec4e99269d36c89b9b93e1cbf883dadac4d02a6f720718e32103b767eb9668bc94c4b45f13f4b55694d397063d6eeeeae7158d36a3618aa95e9253ae",
"hex": "004c695221025853088e55e081311361036b1109a05709231508b23a23c7139b92a2eb4bbe682102d76f699322b2ab86ec4e99269d36c89b9b93e1cbf883dadac4d02a6f720718e32103b767eb9668bc94c4b45f13f4b55694d397063d6eeeeae7158d36a3618aa95e9253ae"
},
"sequence": 4294967295
}
],
"vout": [
{
"value": 0.00002000,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 09e45eb409303ca0a01c29dad1fcf47839f607ce OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a91409e45eb409303ca0a01c29dad1fcf47839f607ce88ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": [
"bchreg:qqy7gh45pycreg9qrs5a450u73urnas8ecttuw07h3"
]
}
},
{
"value": 49.99960100,
"n": 1,
"scriptPubKey": {
"asm": "OP_HASH160 7f5722d61501ddac0986c7cb191045dc44c4df70 OP_EQUAL",
"hex": "a9147f5722d61501ddac0986c7cb191045dc44c4df7087",
"reqSigs": 1,
"type": "scripthash",
"addresses": [
"bchreg:ppl4wgkkz5qamtqfsmrukxgsghwyf3xlwqaeq9gjjt"
]
}
}
]
}
Decoded P2SH inside scriptSig:
{
"asm": "2 025853088e55e081311361036b1109a05709231508b23a23c7139b92a2eb4bbe68 02d76f699322b2ab86ec4e99269d36c89b9b93e1cbf883dadac4d02a6f720718e3 03b767eb9668bc94c4b45f13f4b55694d397063d6eeeeae7158d36a3618aa95e92 3 OP_CHECKMULTISIG",
"reqSigs": 2,
"type": "multisig",
"addresses": [
"bitcoincash:qrurkpfs4caqh44j7vwnlp35wycqe7u46sd6u9d8dd",
"bitcoincash:qplm52q9lw3zdu5aqqswxnxe96me88n3auqanzu3ln",
"bitcoincash:qzkax53uaaq69ymzcy88ajh8wysmug9g9s8gg2kup8"
],
"p2sh": "bitcoincash:pq6f4jgly9qghka0n3luke7y66q4gx5mvydh2kg337"
}
Edited by BigBlockIfTrue