Author: Pieter Wuille 2014-02-19 14:38:19
Published on: 2014-02-19T14:38:19+00:00
In an email conversation, Michael Gronager suggested that it would be more elegant to allow the next bitcoin version to "prettify" all relayed transactions as deterministic transactions fulfilling the scheme 1-6 effectively blocking any malleability attack. Pieter disagreed, stating that actively mutating other's transactions is worse than not relaying them and also said that deterministic hash is impossible since some signature hash types are inherently and intentionally malleable. He suggested that non-malleability should be a choice the sender of a transaction can make. Pieter also mentioned that most rules are already enforced by IsStandard except for #1 and #7. Pieter recommended introducing a new transaction version as a neat way to protect senders who care about non-malleability, and that the new block version number is only there to coordinate the rollout and choosing an automatic forking point. There is a possible fork risk in step 2 if a majority of miners haven't upgraded to 1 when 2 is introduced.
Updated on: 2023-05-19T18:07:05.867985+00:00