14

Does Ethereum in its current form (Homestead, specifically Geth v1.3.6) have transaction malleability issues similar to Bitcoin? If so, is there a standard method for deriving a normalized hash for Ethereum transactions?

Transaction Malleability = The ability for a node on the network to change a transaction in a way such that the hash is invalidated. This produces an identical transaction with a different hash, causing issues for nodes that store and query transactions by hash.

In the past it seems this was an issue/concern. I'm just wondering if it still is or if it has been addressed.

HISTORY

Vitalik mentions susceptibility to transaction malleability on reddit here: https://www.reddit.com/r/ethereum/comments/3o9ru0/transaction_malleability_does_ethereum_have_this/

EIP-2 (Homestead Fork) also involved transaction malleability fixes: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2.mediawiki

  • can you define transaction malleability? – VoR0220 Apr 20 '16 at 21:28
  • @VoR0220 Went ahead and fleshed out transaction malleability meaning. Also added links to relevant historical material for Ethereum. – Eric Scrivner Apr 20 '16 at 21:39
  • Do you mean "the ability for a node [...] to change a transaction in a way such that the hash isn't invalidated"? It's easy to change a transaction and invalidate the hash. – Nick Johnson Apr 21 '16 at 8:50
  • @NickJohnson I do not. So transaction malleability in Bitcoin actually makes it so the same transaction can appear with a different hash, wreaking havoc on systems that look up transactions by hash as the same transaction can appear to be multiple transactions. They've developed normalized hashes in order to mitigate this. – Eric Scrivner Apr 21 '16 at 14:59
  • @EricScrivner But changing a transaction so the hash is invalid is trivial, and useless. I think at the least you need to clarify what you meant - it sounds like "producing an identical transaction with a different hash". – Nick Johnson Apr 21 '16 at 15:02
9

No it does not suffer from malleability (anymore). The homestead hardfork included the malleability fix and transactions that have their signature in the upper range of secp256k1n/2 are rejected.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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