Continuing the discussion about noinput / anyprevout



Summary:

ZmnSCPxj proposes the removal of SIGHASH from signatures and putting it on public keys. He believes that SIGHASH flags attached to signatures are a misdesign, that has been retained since the original BitCoin 0.1.0 Alpha for Windows design. ZmnSCPxj suggests removing the problems with SIGHASH_NONE and SIGHASH_SINGLE by allowing them only if the output specifically says they are allowed. Public keys will now be encoded as either 33-bytes (implicit SIGHASH_ALL) or 34-bytes (SIGHASH byte followed by pubkey type followed by pubkey coordinate). OP_CHECKSIG and friends will look at the public key to determine the sighash algorithm rather than the signature. ZmnSCPxj also proposes the addition of the opcode OP_SETPUBKEYSIGHASH. This retains the old feature where the sighash is selected at time-of-spending rather than time-of-payment.


Updated on: 2023-06-02T20:37:27.495036+00:00