Skip to main content

Search...

Popular searches

Miniscript

Miniscript is a structured policy language for Bitcoin Script. It simplifies writing, analyzing, and compiling complex spending conditions.

Blockchain
Updated: Mar 19, 2026
Also known as: Bitcoin miniscript policy language

What Is a Miniscript?

A Miniscript is a structured policy language for Bitcoin Script. Developers use it to express complex spending conditions in a human-readable and analyzable way. It compiles these policies into efficient Bitcoin Script bytecode.

Miniscript works through a typed syntax with modular operators. Each fragment represents a semantic unit, like signatures, hashes, or timelocks. The type system tracks properties such as malleability and script size. Compilers translate Miniscript into Bitcoin Script, optimizing for stack behavior. For example, a 2-of-3 multisignature policy writes as or_b(pk(A),or_b(pk(B),pk(C))).

Miniscript matters because it enhances security and usability in Bitcoin wallets. It enables static analysis to detect issues like unsatisfiable scripts or excessive sizes before deployment. This reduces errors in custom spending policies, such as those for multisig or inheritance setups.

Key characteristics include composability, where fragments combine reliably; exhaustive analysis tools; and support for advanced features like covenants via extensions. Wallets integrate Miniscript to generate output descriptors, improving interoperability and developer productivity.

BlockchainBitcoin

Bitcoin (BTC) is the first decentralized cryptocurrency, launched in 2009. It uses blockchain technology for secure, peer-to-peer digital transactions without intermediaries.

Read full definition
TransactionMultisig

Multisig (multi-signature) is a security feature that requires multiple private keys to authorize a transaction, enhancing protection against unauthorized access in blockchain networks.

Read full definition
BlockchainOutput Descriptors

Output descriptors (BIP 380) concisely describe Bitcoin wallet output scripts and spending conditions without revealing private keys.

Read full definition
BlockchainInteroperability

Interoperability in blockchain refers to the ability of different blockchain networks to communicate and exchange data or value seamlessly, enabling cross-chain functionality.

Read full definition

Real-World Examples

Example 1: Multisignature Wallets

Developers create a 2-of-3 multisig policy with Miniscript: or_b(pk(A),or_b(pk(B),pk(C))). This compiles to Bitcoin Script bytecode. A wallet then requires any two signatures from keys A, B, or C to spend funds. Businesses use this for shared custody.

Example 2: Inheritance Timelocks

For inheritance, use and_v(or_i(pk(executor),after(365)),pk(guardian))). The guardian spends immediately with their key. Or, after 365 days, the executor spends with theirs. This secures family funds against loss.

Example 3: Wallet Output Descriptors

Sparrow Wallet integrates Miniscript in descriptors like sh(multi(2,[key1],[key2],[key3]))#miniscript. Users import these for custom scripts. The wallet analyzes properties like size and malleability before use.

Example 4: Static Analysis in Development

Tools like miniscript CLI check policies for issues. Input pk(K) outputs satisfiability and script size. Developers catch errors early, avoiding stuck funds in production scripts.

TransactionMultisig

Multisig (multi-signature) is a security feature that requires multiple private keys to authorize a transaction, enhancing protection against unauthorized access in blockchain networks.

Read full definition
BlockchainBitcoin

Bitcoin (BTC) is the first decentralized cryptocurrency, launched in 2009. It uses blockchain technology for secure, peer-to-peer digital transactions without intermediaries.

Read full definition
BlockchainOutput Descriptors

Output descriptors (BIP 380) concisely describe Bitcoin wallet output scripts and spending conditions without revealing private keys.

Read full definition
WalletSparrow Wallet

Sparrow Wallet is a desktop Bitcoin wallet that focuses on security, privacy, and advanced features for managing Bitcoin transactions and keys.

Read full definition

Ready to Choose a Secure Wallet?

Use our tools to find the right hardware wallet for your needs.