Skip to content

Latest commit

 

History

History
254 lines (247 loc) · 5.97 KB

File metadata and controls

254 lines (247 loc) · 5.97 KB

This document collects the fields and types used in PSBTs of any version from all BIPs that define PSBT fields to help coordinate and prevent key collisions.

Global Types

Name <keytype> Parent BIP
Unsigned Transaction PSBT_GLOBAL_UNSIGNED_TX = 0x00 174
Extended Public Key PSBT_GLOBAL_XPUB = 0x01 174
Transaction Version PSBT_GLOBAL_TX_VERSION = 0x02 370
Fallback Locktime PSBT_GLOBAL_FALLBACK_LOCKTIME = 0x03 370
Input Count PSBT_GLOBAL_INPUT_COUNT = 0x04 370
Output Count PSBT_GLOBAL_OUTPUT_COUNT = 0x05 370
Transaction Modifiable Flags PSBT_GLOBAL_TX_MODIFIABLE = 0x06 370
Silent Payment Global ECDH Share PSBT_GLOBAL_SP_ECDH_SHARE = 0x07 375
Silent Payment Global DLEQ Proof PSBT_GLOBAL_SP_DLEQ = 0x08 375
PSBT Version Number PSBT_GLOBAL_VERSION = 0xFB 174
Proprietary Use Type PSBT_GLOBAL_PROPRIETARY = 0xFC 174

Per-input Types

Name <keytype> Parent BIP
Non-Witness UTXO PSBT_IN_NON_WITNESS_UTXO = 0x00 174
Witness UTXO PSBT_IN_WITNESS_UTXO = 0x01 174
Partial Signature PSBT_IN_PARTIAL_SIG = 0x02 174
Sighash Type PSBT_IN_SIGHASH_TYPE = 0x03 174
Redeem Script PSBT_IN_REDEEM_SCRIPT = 0x04 174
Witness Script PSBT_IN_WITNESS_SCRIPT = 0x05 174
BIP 32 Derivation Path PSBT_IN_BIP32_DERIVATION = 0x06 174
Finalized scriptSig PSBT_IN_FINAL_SCRIPTSIG = 0x07 174
Finalized scriptWitness PSBT_IN_FINAL_SCRIPTWITNESS = 0x08 174
Proof-of-reserves commitment PSBT_IN_POR_COMMITMENT = 0x09 127
RIPEMD160 preimage PSBT_IN_RIPEMD160 = 0x0a 174
SHA256 preimage PSBT_IN_SHA256 = 0x0b 174
HASH160 preimage PSBT_IN_HASH160 = 0x0c 174
HASH256 preimage PSBT_IN_HASH256 = 0x0d 174
Previous TXID PSBT_IN_PREVIOUS_TXID = 0x0e 370
Spent Output Index PSBT_IN_OUTPUT_INDEX = 0x0f 370
Sequence Number PSBT_IN_SEQUENCE = 0x10 370
Required Time-based Locktime PSBT_IN_REQUIRED_TIME_LOCKTIME = 0x11 370
Required Height-based Locktime PSBT_IN_REQUIRED_HEIGHT_LOCKTIME = 0x12 370
Taproot Key Spend Signature PSBT_IN_TAP_KEY_SIG = 0x13 371
Taproot Script Spend Signature PSBT_IN_TAP_SCRIPT_SIG = 0x14 371
Taproot Leaf Script PSBT_IN_TAP_LEAF_SCRIPT = 0x15 371
Taproot Key BIP 32 Derivation Path PSBT_IN_TAP_BIP32_DERIVATION = 0x16 371
Taproot Internal Key PSBT_IN_TAP_INTERNAL_KEY = 0x17 371
Taproot Merkle Root PSBT_IN_TAP_MERKLE_ROOT = 0x18 371
MuSig2 Participant Public Keys PSBT_IN_MUSIG2_PARTICIPANT_PUBKEYS = 0x1a 373
MuSig2 Public Nonce PSBT_IN_MUSIG2_PUB_NONCE = 0x1b 373
MuSig2 Participant Partial Signature PSBT_IN_MUSIG2_PARTIAL_SIG = 0x1c 373
Silent Payment Input ECDH Share PSBT_IN_SP_ECDH_SHARE = 0x1d 375
Silent Payment Input DLEQ Proof PSBT_IN_SP_DLEQ = 0x1e 375
Silent Payment Spend Key BIP 32 Derivation Path PSBT_IN_SP_SPEND_BIP32_DERIVATION = 0x1f 376
Silent Payment Tweak PSBT_IN_SP_TWEAK = 0x20 376
Proprietary Use Type PSBT_IN_PROPRIETARY = 0xFC 174

Per-output types

Name <keytype> Parent BIP
Redeem Script PSBT_OUT_REDEEM_SCRIPT = 0x00 174
Witness Script PSBT_OUT_WITNESS_SCRIPT = 0x01 174
BIP 32 Derivation Path PSBT_OUT_BIP32_DERIVATION = 0x02 174
Output Amount PSBT_OUT_AMOUNT = 0x03 370
Output Script PSBT_OUT_SCRIPT = 0x04 370, 375
Taproot Internal Key PSBT_OUT_TAP_INTERNAL_KEY = 0x05 371
Taproot Tree PSBT_OUT_TAP_TREE = 0x06 371
Taproot Key BIP 32 Derivation Path PSBT_OUT_TAP_BIP32_DERIVATION = 0x07 371
MuSig2 Participant Public Keys PSBT_OUT_MUSIG2_PARTICIPANT_PUBKEYS = 0x08 373
Silent Payment Data PSBT_OUT_SP_V0_INFO = 0x09 375
Silent Payment Label PSBT_OUT_SP_V0_LABEL = 0x0a 375
BIP 353 DNSSEC proof PSBT_OUT_DNSSEC_PROOF = 0x35 353
Proprietary Use Type PSBT_OUT_PROPRIETARY = 0xFC 174