[][src]Module lnpbp::bp

Re-exports

pub use bip32::DerivationInfo;
pub use bip32::DerivationTemplate;
pub use chain::Chain;
pub use chain::P2pNetworkId;
pub use short_id::ShortId;

Modules

bip32
blind
chain
dbc
psbt

PSBT extensions, including implementation of different crate::bp::resolvers and enhancements related to key management

resolvers

Resolvers are traits allow accessing or computing information from a bitcoin transaction graph (from blockchain, state channel, index, PSBT etc).

scripts
short_id
tagged_hash

Bitcoin tagged hash helper types.

Structs

HashLock

Hashed locks in HTLC

HashPreimage

Pre-images for hashed locks in HTLC

LockScript

Script which knowledge is required for spending some specific transaction output. This is the deepest nested version of Bitcoin script containing no hashes of other scripts, including P2SH redeemScript hashes or witnessProgram (hash or witness script), or public keys

PubkeyScript

A content of scriptPubkey from a transaction output

RedeemScript

redeemScript as part of the witness or sigScript structure; it is hashed for P2(W)SH output

ScriptSet

Scripting data for both transaction output and spending transaction input parts that can be generated from some complete bitcoin Script (LockScript) or public key using particular [ConversionStrategy]

TxoutSeal
Witness

A content of the witness field from a transaction input according to BIP-141

WitnessProgram
WitnessScript

A content of the script from witness structure; en equivalent of redeemScript for witness-based transaction inputs. However, unlike RedeemScript, WitnessScript produce SHA256-based hashes of WScriptHash type

Enums

Challenge
PubkeyParseError

Errors that may happen during LockScript parsing process

ScriptPubkeyContent
ScriptPubkeyFormat
ScriptPubkeyStructure

Enum defining standard and providing all required data for script pubkey serialization. This enum is not designed for wallets; it covers only BIPs and Bitcoin Core extra-wallet parts.

ScriptPubkeyTemplate
Strategy

Defines strategy for converting some source Bitcoin script (i.e. LockScript) into both scriptPubkey and sigScript/witness fields

WitnessVersion

Version of the WitnessProgram: first byte of scriptPubkey in transaction output for transactions starting with opcodes ranging from 0 to 16 (inclusive).

Traits

GenerateScripts

Script set generation from public key or a given LockScript (with [TapScript] support planned for the future).