<p>There seems to be some variation in the question on wallet vs address. In any event a multisig address is simply a script created by m-of-n public keys (not addresses or wallets). When you build a raw multisig address in the bitcoin core console or with a software library really all you need are the public keys and specify how many are required to spend.</p>
<p>Can these public keys come from different single sig wallets? Of course, it could come from anywhere including different brain wallets (don't do this though, please just an example to prove a point) but as one commenter already noted taking non-standard approaches is a good way to lose your funds if you're not an advanced user.</p>
<p>It's best to stick with what most wallets support where you'll be using a new xpub created with your multisig wallet rather than your single sig xpubs.</p>

CC BY-SA 4.0
2021-08-28T15:29:10.500Z
2021-08-28T15:29:10.500Z
m1xolyd1an
<blockquote>
<p>My pre-understanding is that multisig wallet is simply a combination of many singlesig address.
Is my understanding multisig correct?</p>
</blockquote>
<p>Not exactly.<br />
If we think of addresses as a locks a single-sig address is a lock that requires 1 key to unlock and a multi-sig address is a lock that requires multiple keys to unlock.<br />
This &quot;lock&quot; is created using Bitcoin scripts and each address has a different type of script. So multi-sig is not &quot;combination of single-sig addresses&quot; but an entirely different script.<br />
In a multi-sig script the evaluation requires from <code>0</code> to <code>n</code> signatures.</p>
<p>The problem with combining multiple wallet software is that since there is no universal way of implementing a wallet they usually don't behave the same.</p>
<ul>
<li>One problem is <strong>derivation path</strong> which <code>xpub</code>s don't contain and wallets usually don't let you change it either. This means importing an <code>xpub</code> from wallet A to wallet B could result in two entirely different child keys.</li>
<li>Another problem I can think of is the <strong>order of public keys</strong>. Multi-sig [redeem] scripts look like <code>m &lt;pub1&gt; &lt;pub2&gt; &lt;pub3&gt; n</code> when this is hashed (to create the address) it will produce a different hash (and a different address) compared to <code>m &lt;pub2&gt; &lt;pub1&gt; &lt;pub3&gt; n</code>. This problem could be solved by lexicographic sorting but again wallet A may sort and wallet B may not.</li>
</ul>

CC BY-SA 4.0
2021-08-28T04:55:18.320Z
Thank you for your explanation. So my understanding was wrong.. Simply put, a singlesig wallet cannot be one of the keys of a multisig wallet?
because the key for singlesig wallet is a different TYPE of keys from the key of multisig wallet?
bbnn
CC BY-SA 4.0
2021-08-28T05:19:05.927Z
Not the "keys" but the "scripts" are different.
Coding Enthusiast
CC BY-SA 4.0
2021-08-28T05:44:04.193Z
what I meant by the "keys" was the "keys" that you gave as analogy.
bbnn
CC BY-SA 4.0
2021-08-28T05:53:28.920Z
Oh. In that analogy yes.
Coding Enthusiast
CC BY-SA 4.0
2021-08-28T05:57:24.137Z
ok thank you for your clarification. but what will happen if you create a multisig wallet by importing multiple singlesig's xpub? Will it give you some error?
bbnn
CC BY-SA 4.0
2021-08-28T06:01:20.703Z
actually I just tried that on bluewallet, it gives me an error that the xpub is not from multisig wallet. wonder if it will give the same error in other wallets.
bbnn
CC BY-SA 4.0
2021-08-28T06:47:57.817Z
You have to consult with Bluewallet community about the error, but there shouldn't be any. The wallet should take multiple xpubs and ask for m (min number of signatures) and create the multi sig wallet.
Coding Enthusiast
CC BY-SA 4.0
2021-08-28T04:26:47.693Z
2021-08-28T04:26:47.693Z
Coding Enthusiast
<p>I’m trying to create a multisig wallet for the first time.</p>
<p>My pre-understanding is that multisig wallet is simply a combination of many singlesig address.</p>
<p>So for example I have 3 existing singlesig wallets:</p>
<ol>
<li>electrum wallet</li>
<li>Bluewallet</li>
<li>Coldcard wallet</li>
</ol>
<p>Can I just simply use the xpubs of the wallets to create a multisig wallet?</p>
<p>Is my understanding multisig correct?</p>
<p>If you have coldcard, you know that there is a multisig menu in coldcard. So if creating multisig is simply inserting the coldcard’s xpub to electrum (where the multisig is going to be created) then I don’t need to care about the multisig menu on coldcard? Same with bluewallet, I don’t need to create a vault wallet in there?</p>

CC BY-SA 4.0
2021-08-27T21:42:35.087Z
Unless tools actually support things explicitly, this sort of experimentation is a very good way to irreparably lose your money.
Claris
CC BY-SA 4.0
2021-08-28T04:13:59.867Z
Thank you for your answer. So do you mean my understanding about multisig is wrong?
bbnn
CC BY-SA 4.0
2021-08-28T04:29:18.380Z
I didn't comment on that in particular. Just in general if you try to do unsupported things with wallets the chance of you losing money in a way nobody can recover is extremely high.
Claris
<electrum><multi-signature><xpub><coldcard><bluewallet>
Is multisig wallet simply a combination of many singlesig wallets?
bbnn
# Is multisig wallet simply a combination of many singlesig wallets?

(Asked by: username_0 on 2021-08-27)

I’m trying to create a multisig wallet for the first time.

My pre-understanding is that multisig wallet is simply a combination of many singlesig address.

So for example I have 3 existing singlesig wallets:

1. electrum wallet
2. Bluewallet
3. Coldcard wallet

Can I just simply use the xpubs of the wallets to create a multisig wallet?

Is my understanding multisig correct?

If you have coldcard, you know that there is a multisig menu in coldcard. So if creating multisig is simply inserting the coldcard’s xpub to electrum (where the multisig is going to be created) then I don’t need to care about the multisig menu on coldcard? Same with bluewallet, I don’t need to create a vault wallet in there?

**Tags:** electrum, multi-signature, xpub, coldcard, bluewallet

> **Comments:**
> **username_1**: Unless tools actually support things explicitly, this sort of experimentation is a very good way to irreparably lose your money.  
> **username_0**: Thank you for your answer. So do you mean my understanding about multisig is wrong?  
> **username_1**: I didn't comment on that in particular. Just in general if you try to do unsupported things with wallets the chance of you losing money in a way nobody can recover is extremely high.  

---

## 2 answers

### Answer by username_2 on 2021-08-28. Score: 3

There seems to be some variation in the question on wallet vs address. In any event a multisig address is simply a script created by m-of-n public keys (not addresses or wallets). When you build a raw multisig address in the bitcoin core console or with a software library really all you need are the public keys and specify how many are required to spend.

Can these public keys come from different single sig wallets? Of course, it could come from anywhere including different brain wallets (don't do this though, please just an example to prove a point) but as one commenter already noted taking non-standard approaches is a good way to lose your funds if you're not an advanced user.

It's best to stick with what most wallets support where you'll be using a new xpub created with your multisig wallet rather than your single sig xpubs.


---

### Answer by username_3 on 2021-08-28. Score: 1

> My pre-understanding is that multisig wallet is simply a combination of many singlesig address.
> Is my understanding multisig correct?

Not exactly.  
If we think of addresses as a locks a single-sig address is a lock that requires 1 key to unlock and a multi-sig address is a lock that requires multiple keys to unlock.  
This "lock" is created using Bitcoin scripts and each address has a different type of script. So multi-sig is not "combination of single-sig addresses" but an entirely different script.  
In a multi-sig script the evaluation requires from `0` to `n` signatures.

The problem with combining multiple wallet software is that since there is no universal way of implementing a wallet they usually don't behave the same.

* One problem is **derivation path** which `xpub`s don't contain and wallets usually don't let you change it either. This means importing an `xpub` from wallet A to wallet B could result in two entirely different child keys.
* Another problem I can think of is the **order of public keys**. Multi-sig [redeem] scripts look like `m <pub1> <pub2> <pub3> n` when this is hashed (to create the address) it will produce a different hash (and a different address) compared to `m <pub2> <pub1> <pub3> n`. This problem could be solved by lexicographic sorting but again wallet A may sort and wallet B may not.

> **Comments:**
> **username_0**: Thank you for your explanation. So my understanding was wrong.. Simply put, a singlesig wallet cannot be one of the keys of a multisig wallet? because the key for singlesig wallet is a different TYPE of keys from the key of multisig wallet?  
> **username_3**: Not the "keys" but the "scripts" are different.  
> **username_0**: what I meant by the "keys" was the "keys" that you gave as analogy.  
> **username_3**: Oh. In that analogy yes.  
> **username_0**: ok thank you for your clarification. but what will happen if you create a multisig wallet by importing multiple singlesig's xpub? Will it give you some error?  
> **username_0**: actually I just tried that on bluewallet, it gives me an error that the xpub is not from multisig wallet. wonder if it will give the same error in other wallets.  
> **username_3**: You have to consult with Bluewallet community about the error, but there shouldn't be any. The wallet should take multiple xpubs and ask for m (min number of signatures) and create the multi sig wallet.  

---

