Module taproot
Expand description
Bitcoin Taproot.
This module provides support for taproot tagged hashes.
Modules§
- Contains
TaprootMerkleBranch
and its associated types. - Implements
SerializedSignature
and related types.
Structs§
- Control block data structure used in Tapscript satisfaction.
- Inner type representing future (non-tapscript) leaf versions. See
LeafVersion::Future
. - Store information about taproot leaf node.
- Iterator for a taproot script tree, operating in DFS order yielding
LeafNode
. - Represents the node information in taproot tree. In contrast to
TapTree
, this is allowed to have hidden leaves as children. - Script leaf node in a taproot tree along with the merkle proof to get this node. Returned by
TapTree::script_leaves
- Iterator for a taproot script tree, operating in DFS order yielding
ScriptLeaf
. - A BIP340-341 serialized taproot signature with the corresponding hash type.
- The tag used for
TapNodeHash
- Taproot-tagged hash with tag "TapLeaf".
- The tag used for
TapLeafHash
- Tagged hash used in taproot trees.
- Taproot Tree representing a complete binary tree without any hidden nodes.
- Taproot-tagged hash with tag "TapTweak".
- The tag used for
TapTweakHash
- Builder for building taproot iteratively. Users can specify tap leaf or omitted/hidden branches in a depth-first search (DFS) walk order to construct this tree.
- The merkle proof for inclusion of a tree in a taptree hash.
- Represents taproot spending information.
Enums§
- Error happening when
TapTree
is constructed from aTaprootBuilder
having hidden branches or not being finalized. - The leaf version for tapleafs.
- An error constructing a
taproot::Signature
from a byte slice. - Leaf node in a taproot tree. Can be either hidden or known.
- Detailed error type for taproot builder.
- Detailed error type for taproot utilities.
Constants§
- Taproot annex prefix.
- Tapscript control base size.
- Maximum depth of a taproot tree script spend path.
- Tapscript control max size.
- Size of a taproot control node.
- Tapleaf mask for getting the leaf version from first byte of control block.
- Tapscript leaf version.