Author: Jeremy 2019-10-04 05:02:14
Published on: 2019-10-04T05:02:14+00:00
A proposal to use OP_SHA256STREAM instead of OP_CAT, which allows concatenation of an unlimited amount of data, was discussed. The proposed usage involves starting a new hash with an item, adding an item to the hash in state, and finalizing. A conversation between Ethan Heilman and ZmnSCPxj then took place, with Heilman preferring to use SHA256(type || SHA256(data)) to tag nodes, while ZmnSCPxj suggested increasing the size of the two inputs to OP_CAT to be 260 Bytes each where 520 Bytes is the maximum allowable size of object on the stack. They also discussed implementing tagged SHA256 as a new opcode or using a maximum output size of 64 bytes for OP_CAT. However, this was considered insufficient for checking Merkle tree proofs. Finally, there was a proposal to remove SIGHASH from signatures, put SIGHASH on public keys, and add the opcode OP_SETPUBKEYSIGHASH to select the sighash flag at time-of-spending rather than time-of-payment, making it malleability-safe.
Updated on: 2023-06-13T21:43:17.539968+00:00