7

Is it possible to make a multisig wallet that requires one of the keys specifically and any of the other ones in order to sign a transaction?

For example, let's say I have a 2-of-3 multisig that has signators A, B, and C. Can I make a multisig that requires that every transaction be signed by A specifically and then one of either of the other keys?

1
  • why does this have the nbitcoin tag? looks unrelated
    – knocte
    Commented May 7, 2018 at 8:56

3 Answers 3

6

No, but instead you can make a 3-of-4 multisig where you hold both keys A and B, then you give key C to a family member, and D to someone else(just as an example). This way you are certain that you are involved in all transactions. I presume this is the end result you are after?

4
  • That works and makes sense. Commented Feb 8, 2017 at 12:34
  • no need the "D" key. just 3-of-4 of (A+A+B+C)
    – amaclin
    Commented Oct 7, 2017 at 9:16
  • ahh, very clever amaclin
    – m1xolyd1an
    Commented Oct 8, 2017 at 19:41
  • @amaclin Are you saying that sets of private keys in a multisig definition are not required to be unique? Is there is no limitation with regard to repeating a set of private keys in a multisig definition? So with a 3 of 4 wallet, A and B can both be the same set of private keys?
    – Guru Josh
    Commented May 27, 2023 at 2:57
2

Yes, both of these policies achieve what you are trying to do.

thresh(2,pk(A),or(pk(B),pk(C)))

thresh(2,pk(A),thresh(1,pk(B),pk(C)))

Each of them use thresh() as defined here:

thresh(NUM,POL,POL,...): Require that NUM out of the following subpolicies are met (all combinations are assumed to be equally likely).

1
  • This link is broken. I am trying to setup a multisig wallet using Sparrow. I have tried entering these definitions in the Script Policy Description field but it is throwing an "Invalid output descriptor" error.
    – Guru Josh
    Commented May 27, 2023 at 3:01
-1

There is another solution but it removes the ability to identify who signed the second transaction. Create a 2 of 2 multisig wallet in Electrum. The first signature is yours. The second signature is done via a hardware wallet like Trezor. Clone that Trezor as many times as you want with the recovery seed.

Your Answer

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

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