I am trying to send a raw transaction from my Bitcoin ABC node. It is not fully synced, but I have at least passed the point where I can see some of my transactions. In trying to send a tx after creating it, I get the error:

16: mandatory-script-verify-flag-failed (Illegal use of SIGHASH_FORKID)

What is this, and how can I resolve it?

  • I have actually done this and it is not advisable. Fortunately for you your tx was rejected. What happened in my case is that the address I tried to send my BCC to ended up sending to a bitcoin address of the same ID. I'm guessing you were smart enough to use a backed up version of your wallet.dat/had swept those funds into a different address (on bitcoin). I would wait for sync before trying to send anything... I don't think you have much of a choice (maybe other client)
    – tunafizz
    Commented Aug 5, 2017 at 5:00

1 Answer 1


It looks like the error message for receiving a legacy transaction on a Bitcoin ABC node: https://github.com/Bitcoin-ABC/bitcoin-abc/blob/174846aaaf564e64b6bd06d679996b52ba86ad53/src/validation.cpp#L1445

Speculation: It seems plausible that Bitcoin ABC would create regular transactions before reaching the fork in order to retain compatibility with the Bitcoin network, but then recognizes them as being invalid to the upgraded network. (This is unverified speculation.)

  • I have been given a similar answer elsewhere.
    – user31364
    Commented Aug 4, 2017 at 19:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.