Module sapio_miniscript::descriptor[][src]

Output Descriptors

Tools for representing Bitcoin output’s scriptPubKeys as abstract spending policies known as “output descriptors”. These include a Miniscript which describes the actual signing policy, as well as the blockchain format (P2SH, Segwit v0, etc.)

The format represents EC public keys abstractly to allow wallets to replace these with BIP32 paths, pay-to-contract instructions, etc.

Structs

Bare

Create a Bare Descriptor. That is descriptor that is not wrapped in sh or wsh. This covers the Pk descriptor

DescriptorKeyParseError

Descriptor Key parsing errors

DescriptorSinglePriv

A Single Descriptor Secret Key with optional origin information

DescriptorSinglePub

A Single Descriptor Key with optional origin information

DescriptorXKey

Instance of an extended key with origin and derivation path

Pkh

A bare PkH descriptor at top level

Sh

A Legacy p2sh Descriptor

SortedMultiVec

Contents of a “sortedmulti” descriptor

Wpkh

A bare Wpkh descriptor at top level

Wsh

A Segwitv0 wsh descriptor

Enums

Descriptor

Script descriptor

DescriptorPublicKey

The MiniscriptKey corresponding to Descriptors. This can either be Single public key or a Xpub

DescriptorSecretKey

A Secret Key that can be either a single key or an Xprv

DescriptorType

Descriptor Type of the descriptor

ShInner

Sh Inner

Wildcard

Whether a descriptor has a wildcard in it

WshInner

Wsh Inner

Traits

DescriptorTrait

A general trait for Bitcoin descriptor. Offers function for witness cost estimation, script pubkey creation satisfaction using the Satisfier trait.

InnerXKey

Trait for “extended key” types like xpub and xprv. Used internally to generalize parsing and handling of bip32::ExtendedPubKey and bip32::ExtendedPrivKey.

Type Definitions

KeyMap

Alias type for a map of public key to secret key