5

I want to set up a multisig that requires fewer signatures as time goes by.

Let T be some time in the future (e.g. a year from now).

Before T, 2/3 signatures are required to unlock the UTXO (send coins). After T, 1/3 signatures is required to unlock the UTXO.

The idea is to provide a recovery mechanism in case I lose 2 out of 3 keys. If I do not lose 2 keys, then my multisig would be just as secure as a regular 2/3 as long as I move the coins before T. If I lose 2 keys, then I have a recovery mechanism as long as I still have 1 key and none of the 3 keys were leaked.

Is this possible in Bitcoin, and if so, how? Is there a user-friendly tool that lets us do this? Thanks in advance!

1 Answer 1

2

This is technically possible but the user friendly tools are a work in progress depending on what you want to use. You've added the label "Ledger Hardware Wallet" to your question (since removed) so you may be interested in the latest state of Miniscript support in Ledger devices.

How I would do this currently (there may be better ways today or in future) is to use one of these sites (sipa's Miniscript, Bitcoin Dev Kit playground, shesek's min.sc) to generate your Miniscript from a Policy. sipa's site has an example Policy of "A 3-of-3 that turns into a 2-of-3 after 90 days":

thresh(3,pk(key_1),pk(key_2),pk(key_3),older(12960))

that compiles down to Miniscript of:

thresh(3,pk(key_1),s:pk(key_2),s:pk(key_3),sln:older(12960))

To change the Policy into what you want you could do (12960 x 4 = 51840):

thresh(2,pk(key_1),pk(key_2),pk(key_3),older(51840))

and run that through the compiler to get the Miniscript. Once you have the Miniscript you can import it into a Miniscript supporting wallet like Bitcoin Core, Specter or possibly in future Ledger.

I'd advise you practice with signet or testnet coins a few times first as the spending from this Miniscript will require PSBT and HWI if you are using hardware signers.

TL;DR technically possible but requires a lot more work to make it user friendly. It isn't using Taproot either so it would be a SegWit v0 address.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.