clementine_core/builder/mod.rs
1//! # Bitcoin Transaction Builder for Clementine Bridge
2//!
3//! This module provides a helper struct TxHandler for constructing
4//! the tx's needed for the bridge. TxHandler's purpose is to store additional
5//! data compared to a normal Bitcoin transaction to facilitate easier signing as the
6//! scripts used in bridge can be quite complex.
7//!
8//! Modules:
9//! - address: Contains helper functions to create taproot addresses and deposit addresses.
10//! - script: Contains all kinds of scripts that are used in the bridge. There is a struct for each kind of script to
11//! facilitate both easier script creation and easier signing.
12//! - sighash: As its possible more than 100000 tx's can be signed in a single deposit (depends on number of round tx's, number of
13//! kickoff utxo's, and number of operators), the sighash functions create a stream that verifiers and operators consume to sign the tx's
14//! during a deposit.
15//! - transaction: Contains the functions that create TxHandler's of every single tx needed for the bridge. For detailed information
16//! about the tx's see the [clementine whitepaper](https://citrea.xyz/clementine_whitepaper.pdf).
17pub mod address;
18pub mod block_cache;
19pub mod script;
20pub mod sighash;
21pub mod transaction;