Regarding BIP322 edge cases



Summary:

The email thread discusses the issue of backward compatibility in Bitcoin Scripting language and proposes solutions to accommodate it. The lack of OP_CHECKDATASIG opcode can cause compatibility issues, so introducing a hypothetical opcode that performs ECDSA public key recovery and SHA256/RIPEMD160 is suggested as a solution. This would require decoding the Base58 address into "0x00" plus the address hash, which should be straightforward for legacy signing methods. Additionally, the use of OP_RESERVED wrapped in OP_IF to make a "conditionally valid transaction" is discussed.The email also references BIP322 and its TODO items, including dealing with Silent Transactions, limiting eligible opcodes in scriptPubKeys for signing, and enabling delegation to another scriptPubKey. It is suggested that one of the NOPs should be placed at the beginning of the script to activate proof parsing mode, but an opcode may not be necessary if the program can infer from context where the proof is coming from. For delegation to another scriptPubKey, the proposal suggests using MAST (two Merkle branches) to contain both scriptPubKeys.


Updated on: 2023-06-15T23:41:26.311682+00:00