New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spend transaction from a multisig creating the raw transaction doesn't work #63
Comments
I've got the same situation using private keys and multisig address and trying to send raw tx after sign it using RPC API of the bitcoin-abc. I was following this schematic when building my transaction: And the signed raw tx looks so: |
I'm having the same issue. Electron cash had the same issue (Electron-Cash/Electron-Cash#6), this was the patch that fixed it (Electron-Cash/Electron-Cash@b308175#commitcomment-23438589). Any ABC developers going to address this? |
You now need to specify an "amount" attribute with the multisig input(s) you are spending. |
I've tried to use amount attribute inside each input - this did not helped me. Is any updated documentation how the new parameters for the creating raw tx and signing it should look? |
@eeexception See this line in an updated RPC test, which passes. In this python example you'd have |
It passes meaning successful broadcast to BCH chain with pre forked coins? Do you have a txid? |
Yes, though I've only run it in test. It was previously failing on broadcast, because verification expects the actual amount (not 0) to be signed. |
Thank you. I've could successfully sign and submit multisig transaction. |
@EException did you have to build from source or just use the python script instead of console inside the ABC client? |
@coinables I've used 0.14.6 binaries and created, signed and send tx using RPC API using http rest client. |
Ok it works, just need to put the exact same amount input side when using signrawtransaction |
…ake it throw an error instead Summary: After hard fork, replay protected tx's require the amount field to be non-zero for previous outputs in signed tx's. JSON RPC code was accepting transactions with this field missing when it should have been throwing an error. Users had the impression the transaction that was signed was good, but when trying to sent to network, they would get an error that the tx is bad. See github issue Bitcoin-ABC#63. Depends on D448 Test Plan: Depends on D448 make check and also rpc-tests.py Reviewers: #bitcoin_abc, sickpig, freetrader, dgenr8, deadalnix Reviewed By: #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D449
The fix is ready and will ship with the next version. |
They are no longer relevant.
Spend transaction from a 2 out of 3 Mulitisig is successfully created (complete = true...) But transaction is rejected by the network. (Illegal use of sighash type... )
(the transaction shows the ALL|FORKID flag in front of each signatures)...
Push in viaBTC = invalid raw transaction
Pusn in Electrum = "error: The transaction was rejected by network rules. (16: mandatory-script-verify-flag-failed (Signature must be zero for failed CHECK(MULTI)SIG operation))
The text was updated successfully, but these errors were encountered: