I want to replicate transaction malleability to study it.

I have two transactions data signed in testnet. One it's the original,


The second one is the transaction "malleated".


Before send the first one and after send the malleated transaction.

I receive txn-mempool-conflict (code 18)

I can't replicate the transaction malleability if the original is already in the mempool?

I'm using bitcoin-core

1 Answer 1


What malleability means is that you can create a transaction that is identical in its meaning (same inputs, same outputs) but with a different TXID. That is problematic for 2nd layer protocols where transactions build onto each other but aren't necessarily published to chain.

But a "malleated" transaction is still a double spend. And it appears newer versions of bitcoin-core that support RBF won't accept double spends into their mempool.

See code snippet here: Validation Error: Error #-26: 258: txn-mempool-conflict

  • Thanks @guggero, Can I disable RBF in my node? I don't find any option
    – monkeyUser
    Jan 16, 2020 at 16:06
  • RBF (as specified in BIP125) only applies when you signature replacement. The problem is here that you don't do that, and as a result the replacement is not accepted. Jan 16, 2020 at 16:32
  • This is unrelated to RBF. Double spends have never been accepted.
    – Ava Chow
    Jan 16, 2020 at 16:46

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.