Safer sighashes and more granular SIGHASH_NOINPUT



Summary:

A proposal has been made to use a 64-byte signature for the default "signing all" sighash and a 65-byte signature for other sighash types. The purpose of this is to save space and fit more transactions in a block. However, this decision makes it harder to estimate witness weight in multisig cases. Russell O'Connor via bitcoin-dev suggests an alternative approach where every signature is assumed to be 65 witness bytes, allowing prioritization benefits if someone chooses a shorter signature. The error margin would only be 0.25 vbytes per signature.On the other hand, Johnson Lau proposes an opposite approach, questioning whether there is proof that any script can be transformed into an equivalent one that avoids witness weight malleability. They also raise concerns about the cost associated with avoiding witness weight malleability. Lastly, aj suggests that "DEPTH 2 NUMNOTEQUAL" may have been a more obvious choice compared to the current "OP_DEPTH OP_1SUB OP_1SUB" for libwally's proposed "csv_2of3_then_2" Script.


Updated on: 2023-05-20T18:11:02.652105+00:00