Module: BSV::Transaction::Sighash

Defined in:
lib/bsv/transaction/sighash.rb

Overview

Sighash type constants for BIP-143 transaction signing.

BSV requires the FORK_ID flag (0x40) on all sighash types. The pre-combined constants (e.g. ALL_FORK_ID) are the most common values used when signing transactions.

Constant Summary collapse

ALL =

Sign all inputs and all outputs.

0x01
NONE =

Sign all inputs, no outputs (outputs can be modified).

0x02
SINGLE =

Sign all inputs and only the output at the same index.

0x03
ANYONE_CAN_PAY =

Sign only this input (others can be added/removed).

0x80
FORK_ID =

BSV fork ID flag (required on all BSV signatures).

0x40
MASK =

Mask for extracting the base sighash type (ALL/NONE/SINGLE).

0x1f
ALL_FORK_ID =

SIGHASH_ALL with FORKID — the default sighash type.

ALL | FORK_ID
NONE_FORK_ID =

SIGHASH_NONE with FORKID.

NONE | FORK_ID
SINGLE_FORK_ID =

SIGHASH_SINGLE with FORKID.

SINGLE | FORK_ID
ALL_FORK_ID_ANYONE_CAN_PAY =

SIGHASH_ALL | ANYONE_CAN_PAY with FORKID.

ALL_FORK_ID | ANYONE_CAN_PAY
NONE_FORK_ID_ANYONE_CAN_PAY =

SIGHASH_NONE | ANYONE_CAN_PAY with FORKID.

NONE_FORK_ID | ANYONE_CAN_PAY
SINGLE_FORK_ID_ANYONE_CAN_PAY =

SIGHASH_SINGLE | ANYONE_CAN_PAY with FORKID.

SINGLE_FORK_ID | ANYONE_CAN_PAY