WiPosts: 12 · Reputation: 191
So if some Sparrow multi-sig wallet user decides to switch to a new desktop or laptop, what’s the process? After reinstalling Sparrow or Electrum on the new device, can you just rebuild the same multi-sig wallet with only the seed phrases from the cold signers? Or do you need the wallet setup file with the public keys to recreate it?
Also, is having the output wallet descriptor file sufficient for setting up the multi-sig again? Basically, how crucial is it to have both the wallet setup file and the descriptor file backed up? Appreciate any insights.
LPosts: 540 · Reputation: 2813
If you are asking of maybe the wallet file of the multisig wallet is less important or if you lost it you will be able go back up your wallet I will say what you mostly need is the seed phrase of each co-signers and also the master public key of every co-signer.
Example is if you create a 2-of-3 mult sig wallet you need.
1. The wallet 1 seed, master public key 2 and master public key 3 for the first wallet recovery.
2. For wallet two you need wallet seed 2, master public key 1 and master public key 3 for the second wallet recovery.
3. The last wallet recovery you need wallet seed 3, master public key 1 and master public key 2 for the last wallet recovery
What you need else again is the wallet setup script which in this case is 2-of-3, if you mistake it like you use a script of 3-of-3 you can be able to recover the multi sig wallet. So the master public keys of other co-signers are as important as the seed phrase of each wallet. With this there is no need trying to back up any file
GrPosts: 1025 · Reputation: 2646
If in the same wallet, yes with just the seed phrases.
If in separate wallet, you'll have to derive the extended public keys from those seed phrases (during wallet creation or somewhere) to re-create the cosigner wallets.
But it's better to backup the other cosigner's extended public keys in case one of the cosigner lost his seed phrase.
No, as of the latest version, it can only export watch-only descriptors containing extended public key(s) rather than master private key(s).
As noted in the "Information" in the export dialogue, it's mainly for watching-only wallet generation rather than backup.
SiPosts: 473 · Reputation: 2317
Prerequisites for multisig restoration are as follows: seed phrases for all cosigners and correct Script Type (at restoring) i.e. P2WSH for Native Segwit, P2SH-P2WSH for Nested Segwit and P2SH for Legacy wallets.
Yeah. It's enough.
To restore from descriptor you should first back-up that descriptor. To do this open your multisg , go to Settings, press Edit at the right of Descriptor field and copy the content of the opened subwindow.
When restoring - New Wallet --> Enter Name --> Edit (at right of Descriptor field) -->paste content of descriptor you back-up.
Shazam
P.S. Just did it. Works like a charm
GrPosts: 1025 · Reputation: 2646
No it's not, you created a 'Watch Only Wallet' with the "extended public keys" in the descriptor.
It's just Sparrow doesn't indicate it in obvious spots, it's only visible in the specific wallet's settings
If you've tested a transaction and you somehow signed it successfully, you must have the original non-watching-only wallet loaded together with that restored watching-only copy.
SiPosts: 473 · Reputation: 2317
Nope, restored wallet declares that it is 'Watch Only Wallet' but in fact it is not. I just have sent transaction (using testnet) from wallet restored from descriptor (by using the way described in my previous message) . The cosigners are Passport 2 and BIP39 software wallet. Coordinator of those cosigners is Sparrow 1.8.2
GrPosts: 1025 · Reputation: 2646
If it's a watch only wallet, it is a watch only wallet.
In exception to hardware wallet that can be used to sign transactions which isn't OP's case.
Like I said, if that BIP39 software wallet is loaded,
even if you created the transaction using that watching-only wallet, Sparrow will use the necessary wallet to sign it, in that case, the BIP39 software wallet.
Go to your BIP39 software wallet and close it, then try to send a new transaction again using the watch only wallet.
If you somehow created it as 1-of-2, then one signer is only required so keep it in consideration with the results.
E.g. Can be signed by Passport 2 alone.
SiPosts: 473 · Reputation: 2317
I have created 2-of-2 .
Multisig wallet in fact is coordinator of some cosigners and is not capable to sign transaction without inputs of those cosigners.
You said that it is not possible to recreate full functioning multisig Sparrow from descriptor. I show you that it is not problem at all.
I have created it and no matter how you call it.
Multisig wallet recreated from back-up descriptor is a full functioning multisig wallet which is capable to coordinate relevant cosigners. That's it.
I didn't load it. I used only back-up descriptor of BIP 39 + Passport 2
GrPosts: 1025 · Reputation: 2646
Bottom-line is it's a bad answer to OP's question.
You see, he's asking if it's enough to re-establish the MultiSig wallet, if he followed the advice that the descriptor is enough.
He may count on it in case the seed phrases are gone.
As you can see, that exported descriptor wallet doesn't contain anything that can sign a transaction from either cosigner.
You can check it yourself that it contains "extended public keys" and no master private keys or seed.
SiPosts: 473 · Reputation: 2317
#10Jan 24, 2017, 07:05 PM Just new test.
Created 2-of-2 multisig from two BIP 39 software wallets using Sparrow as coordinator. Back-up its descriptor. Sent to its address testnet BTC . Deleted that multsig wallet and restored it from back-up descriptor. Transaction is there. From restored multisig tried to send testnet BTC back .Not possible!
Thus, if at least one of cosigner is HW then restoration from descriptor works otherwise does not.