BIP341

BIP341

new BIP341()

Description:
  • BIP341 - Taproot Sighash Calculator

Source:

Methods

(static) calculate(tx, inputIndex, prevouts, sighashTypeopt, annexopt) → {Buffer}

Description:
  • Calculate BIP341 sighash for Taproot key-path spending

Source:
Parameters:
Name Type Attributes Default Description
tx Object

Transaction object

inputIndex number

Input being signed

prevouts Array

Previous outputs (with value and scriptPubKey)

sighashType number <optional>
0x00

Sighash type (DEFAULT=0x00)

annex Buffer <optional>
null

Optional annex

Returns:

32-byte sighash

Type
Buffer

(static) forScriptPath(tx, inputIndex, prevouts, tapLeafHash, keyVersion, sighashTypeopt, annexopt) → {Buffer}

Description:
  • Calculate sighash for Taproot script-path spending

Source:
Parameters:
Name Type Attributes Default Description
tx Object

Transaction object

inputIndex number

Input index

prevouts Array

Previous outputs

tapLeafHash Buffer

Leaf hash (tapleaf_hash)

keyVersion Buffer

Key version (0x00 for internal key)

sighashType number <optional>
0x00

Sighash type

annex Buffer <optional>
null

Optional annex

Returns:

32-byte sighash

Type
Buffer

(static) shaAmounts(prevouts) → {Buffer}

Description:
  • Calculate sha_amounts for Taproot

Source:
Parameters:
Name Type Description
prevouts Array

Previous outputs with values

Returns:

32-byte hash

Type
Buffer

(static) shaOutputs(outputs) → {Buffer}

Description:
  • Calculate sha_outputs for Taproot

Source:
Parameters:
Name Type Description
outputs Array

Transaction outputs

Returns:

32-byte hash

Type
Buffer

(static) shaPrevouts(inputs) → {Buffer}

Description:
  • Calculate sha_prevouts for Taproot

Source:
Parameters:
Name Type Description
inputs Array

Transaction inputs

Returns:

32-byte hash

Type
Buffer

(static) shaScriptPubkeys(prevouts) → {Buffer}

Description:
  • Calculate sha_scriptpubkeys for Taproot

Source:
Parameters:
Name Type Description
prevouts Array

Previous outputs with scriptPubKeys

Returns:

32-byte hash

Type
Buffer

(static) shaSequences(inputs) → {Buffer}

Description:
  • Calculate sha_sequences for Taproot

Source:
Parameters:
Name Type Description
inputs Array

Transaction inputs

Returns:

32-byte hash

Type
Buffer