Module revault_tx::scripts[][src]

Revault scripts

Miniscript descriptors for policies specific to the Revault architecture.

We use miniscript in order to "safely" derive scripts depending on the setup configuration (ie the number of stakeholders, the number of fund managers, and the relative timelock) for all script but the (unknown Emergency one).

Note these functions are not safe to reuse after initial set up, as the returned descriptors are non-deterministically compiled from an abstract policy. Backup the output Miniscript descriptors instead.

Structs

CpfpDescriptor

The CPFP miniscript descriptor. See the cpfp_descriptor function for more information.

DepositDescriptor

The vault / deposit miniscript descriptor. See the deposit_descriptor function for more information.

EmergencyAddress

The "emergency address", it's kept obfuscated for the entire duration of the vault and is necessarily a v0 P2WSH

UnvaultDescriptor

The unvault miniscript descriptor. See the unvault_descriptor function for more information.

Functions

cpfp_descriptor

Get the miniscript descriptor for the unvault transaction CPFP output.

deposit_descriptor

Get the miniscript descriptor for the deposit outputs.

unvault_descriptor

Get the miniscript descriptors for the unvault outputs.