Skip to content

BIP118 ANYSCRIPT signatures shouldn't commit the codesep_pos #74

@darosior

Description

@darosior

BIP118 states:

  • Extension:
    • If ''hash_type & 0xc0'' is not SIGHASH_ANYPREVOUTANYSCRIPT:
      • ''tapleaf_hash'' (32): the tapleaf hash as defined in BIP 341
    • ''key_version'' (1): a constant value ''0x01'' representing that this is a signature for a BIP 118 public key.
    • ''codesep_pos'' (4): the opcode position of the last executed OP_CODESEPARATOR before the currently executed signature opcode, with the value in little endian (or ''0xffffffff'' if none executed). The first opcode in a script has a position of 0. A multi-byte push opcode is counted as one opcode, regardless of the size of data being pushed.

However the "codesep_pos" is itself a weak commitment to the Script spent. I think "codesep_pos" should not be committed if the hash type is SIGHASH_ANYPREVOUTANYSCRIPT?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions