Module psbt

Expand description

Partially Signed Bitcoin Transactions.

Implementation of BIP174 Partially Signed Bitcoin Transaction Format as defined at https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki except we define PSBTs containing non-standard sighash types as invalid.

Modules§

raw
Raw PSBT key-value pairs.
serialize
PSBT serialization.

Structs§

Input
A key-value map for an input of the corresponding index in the unsigned transaction.
Output
A key-value map for an output of the corresponding index in the unsigned transaction.
PartiallySignedTransaction
A Partially Signed Transaction.
PsbtSighashType
A Signature hash type for the corresponding input. As of taproot upgrade, the signature hash type can be either EcdsaSighashType or SchnorrSighashType but it is not possible to know directly which signature hash type the user is dealing with. Therefore, the user is responsible for converting to/from PsbtSighashType from/to the desired signature hash type they need.
TapTree
Taproot Tree representing a finalized TaprootBuilder (a complete binary tree).

Enums§

Error
Ways that a Partially Signed Transaction might fail.
IncompleteTapTree
Error happening when TapTree is constructed from a TaprootBuilder having hidden branches or not being finalized.
Prevouts
Contains outputs of previous transactions. In the case SchnorrSighashType variant is SIGHASH_ANYONECANPAY, Prevouts::One may be used.

Type Aliases§

Psbt
Partially signed transaction, commonly referred to as a PSBT.