Safer sighashes and more granular SIGHASH_NOINPUT



Summary:

In this context, Anthony Towns expresses his opinion on the proposed BIP118 and its way of committing to the inputs. He believes that committing only to the sequence numbers is a roundabout way of doing it. Though he acknowledges that it could make sense if they at least committed to the values of each input's outpoint as it would be an actual constraint. BIP118 currently commits to the value of the input being spent, so this is not blanked out in the current proposal. This is intentional as the outputs are committed to, and not committing to the input values could result in unexpected fees. As for Anthony's proposal, he likes the `sighash_scriptmask` proposal and thinks that committing to the fees with the `nofee` escape hatch also works well. His only concern is that introducing a new opcode to mask things in the sighash looks like a similar layer violation as `codeseparator` was, but he considers this a minor issue. Regarding the `OP_MASK` proposal, Anthony thinks that it is okay as far as layering goes. It can be thought of as a set of multibyte "OP_MASKED_PUSH" opcode(s). As long as `OP_MASK` only applies to a PUSH and it's an error for `OP_MASK` not to be immediately followed by that PUSH, it should work fine.


Updated on: 2023-06-13T15:24:32.748551+00:00