Bit-Wasp/bitcoin-lib-php

Remove hardcoded OP_PUSHDATA1

afk11 opened this issue · 1 comments

afk11 commented

https://github.com/Bit-Wasp/bitcoin-lib-php/blob/master/src/RawTransaction.php#L1285

This hardcoded OP_PUSHDATA1 will cause problems with BIP62, which addresses malleability in a number of ways, including checking if the length of the datadata's could be represented in fewer bytes.

For example, 2-of-3 is only about 0x69 bytes, hence does not require any special PUSHDATA opcodes. The scripts produced are valid, but are relying on the same behavior that actually causes malleability, and may soon be invalidated.

We have some time on this one as BIP62 is delayed, I'll have a look at this soon.

afk11 commented

This has been merged and fixed, will close.