0

Further to the following question:

Can the same set of private keys be used multiple times in a multisig wallet?

I tried to create a multisig wallet with keys (A and (B or C)) in Sparrow wallet using the policy suggested by @Vojtěch Strnad. However, it threw an "invalid output descriptor" error. If I try to create a simple 2 of 4 multisig wallet, Sparrow wallet generates the following descriptor:

wsh(sortedmulti(2,Keystore1,Keystore2,Keystore3,Keystore4))

This appears to be a different notation. What should the descriptor be in Sparrow wallet for a multisig wallet supporting keys (A and (B or C)) ? The Sparrow wallet GUI doesn't seem to provide options to create more complex wallets such as this.

Guru Josh
  • 141
  • 2
  • Have you tried putting `wsh(...)` around the miniscript compiler output? It can only be used inside P2WSH for now. – Pieter Wuille Aug 15 '23 at 13:46
  • So overall it'd be `wsh(and_v(or_c(pk(B),v:pk(C)),pk(A)))`, possibly replacing the A/B/C with the kind of key expressions that Sparrow uses (which I'm unfamiliar with). – Pieter Wuille Aug 15 '23 at 13:54

1 Answers1

1

Such a policy would have to be described using a Miniscript Output Descriptor, which i believe the Sparrow wallet does not support yet (as of August 2023).

A simpler k-of-N multisig policy can however be described using a non-Miniscript Output Descriptor (multi or sortedmulti), which are supported by the Sparrow wallet.

If you want to use the Miniscript Descriptor, you could import it on a Bitcoin Core wallet (starting with version 25.0 for full support) until Sparrow supports Miniscript.

Antoine Poinsot
  • 5,881
  • 2
  • 11
  • 28
  • Could the same thing be achieved using a simple 3 of 4 wallet with keys AABC? This would result in key A always being required for a withdrawal and at least one of B and C? – Guru Josh Aug 15 '23 at 21:59
  • Yes, but you'd have to derive another key from the same xpub (or duplicate the key, but that's worse). – Antoine Poinsot Aug 16 '23 at 06:48