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 PSBT key-value pairs.

PSBT serialization.

Structs

A key-value map for an input of the corresponding index in the unsigned transaction.

A key-value map for an output of the corresponding index in the unsigned transaction.

A Partially Signed Transaction.

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.

Taproot Tree representing a finalized TaprootBuilder (a complete binary tree).

Enums

Ways that a Partially Signed Transaction might fail.

Error happening when TapTree is constructed from a TaprootBuilder having hidden branches or not being finalized.

Error happening during PSBT decoding from Base64 string