Thanks to Ledger embedded engineer Salvatore Ingala’s initiative, any common Ledger device is now able to create time-morphing vaults and other complex Miniscript transactions using Ledger’s official code. Millions of Bitcoin wallets are now compatible with the programming language.
Miniscript is already a part of the Bitcoin network in its current state. It requires no forks, chain variants, nor separate tokens.
Now, the community is rediscovering its unique capabilities to increase the reliability of self- and collaborative-custody solutions. Rob Hamilton, founder of Bitcoin insurance company AnchorWatch, told Protos that it uses the “available Bitcoin operation codes that exist today. Because of that, it requires no fork or change in the rules of how Bitcoin works.
“We’re leveraging the tools already available within Bitcoin’s code base. Miniscript enables concepts like key heirarchies – where all keys in a multi-signature are not equal. One could also require multiple multi-signature quorums to sign off prior to moving funds.”
Bitcoin sovereign veto
Miniscript uniquely gives Bitcoiners the ability to grant themselves a “sovereign veto,” a way to clawback funds from a multi-signature wallet. The sovereign veto illuminates one of Miniscript’s many possibilities.
Consider a saver who wishes to safeguard funds with a custodian-assisted vault, such as with Unchained Capital. Without Miniscript, the saver might simply create a 2-of-3 multi-signature wallet between custodian, attorney, and saver.
In this basic setup, any two parties can move funds from the wallet. Importantly, however, two parties must sign. If two keys were ever lost, the funds would be inaccessible forever.
Consider the saver’s recourse if a terrible event destroyed the keys of both the custodian and attorney. However terrible it might be to consider, wartime explosions might cause such a tragedy. Again, in a traditional 2-of-3 multi-sig, the funds would be lost forever.
What can it do to help savers?
Miniscript provides the solution to this problem. It allows the saver to create a multi-sig vault that allows the saver to clawback possession of bitcoin if a preset length of time transpires with no other signatures.
The saver creates a 3-of-3 Miniscript vault with the following specifications:
- If the saver, custodian, and attorney all co-sign, there’s no timelock. With all three signatures, the bitcoin is immediately accessible.
- If all three parties don’t sign, then after waiting any preset number of time or blocks, only the saver and the custodian need to sign. With Miniscript, the 3-of-3 multi-sig wallet has transformed into a 2-of-3 multi-sig wallet by simply allowing time to pass. This is also known as a decaying multi-sig.
- If time continues to transpire and the Bitcoin network has mined an even greater number of blocks, then only the saver needs to sign.
In this way, the saver has clawed-back the funds after waiting a reasonable, predetermined amount of time. Perhaps the other two keys were destroyed, yet the funds are not lost forever. This is Miniscript’s sovereign veto.
This programming language makes Bitcoin Script more accessible for savers to not accidentally lock themselves out of their money. Hamilton explained, “Miniscript enables a multi-institutional custody model for Bitcoin. Using a single counterparty or custodian is an artifact of legacy banking.
“Bitcoin was already programmable money. With Miniscript we’re finally getting reliable access to that programming layer in Bitcoin.”
Miniscript vaults also create a template for hardware companies to parse timelocked Bitcoin Script.
Who created Bitcoin Miniscript?
Pieter Wuille and Andrew Poelstra created it in 2018 as an idiosyncratic programming language to simplify the even more complicated Bitcoin Script.
Wuille and Poelstra formally released Miniscript to the Bitcoin Core developers’ email list in August 2019. By that time, Sanket Sanjalkar had joined Wuille as a programmer. Even today, Sanjalkar and Poelstra remain co-workers at Blockstream, Bitcoin’s largest development company.
Hamilton offered a final thought on the addition of Miniscript support by Ledger: “Miniscript is a massive upgrade in how Bitcoin Custody can operate. As we extend the programmability of Bitcoin’s base layer, the benefits will compound onto higher layers of the Bitcoin Protocol.”