<blockquote>
<p>When an attacker has access to the private key of the wallet, he can dump the private keys of every address used for the multisign address(es).</p>
</blockquote>
<p>In the case of multisig addresses, there are <em>multiple</em> participating wallets, and multiple need to sign.</p>
<blockquote>
<p>So, what's the point of multi sign addresses when there's a single point of compromising the security of the Bitcoins?</p>
</blockquote>
<p>Compromising a single wallet is exactly what multisig protects against.</p>
<blockquote>
<p>Why don't we have a multi signature wallet? A wallet that requires multiple private keys to be opened.</p>
</blockquote>
<p>There are several. Some are commercial services, where one of the participants is the service operator (who then e.g. requires 2FA for signing). Others are advanced software that needs configuration to use.</p>

CC BY-SA 4.0
2023-11-10T22:51:47.263Z
Got it now, but then, why would we generate all multisign addresses inside the same wallet? Wouldn't we have to generate every address in a separate wallet for every address?
Otijun
CC BY-SA 4.0
2023-11-10T22:52:53.920Z
Each address will require signing with a list of public keys, one from each wallet. Typical schemes for address generation permit wallets to share their (master) public key, so that co-signers (and others) can derive multiple public keys at once. This means no communication with the wallets is needed for each new address.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T22:59:41.020Z
"one from each wallet", which wallets? Bitcoin documentation does not specify that there are multiple wallets in the multisig process, rather, it suggests generating the addresses in the same wallet.
Otijun
CC BY-SA 4.0
2023-11-10T23:03:48.853Z
If we want a real Multisignature setup, with let's say 5 nodes, It looks to me, and please correct me if I am wrong, that we would have to run the command: 

bitcoin-cli importaddress "multisig_address_generated_in_node_1" "" false

inside nodes 2,3,4,5.

Only this way we can achieve a real multisignature wallet, multisignature address having all of them a different private key
Otijun
CC BY-SA 4.0
2023-11-10T23:04:00.643Z
In practice, in a multisig wallet, you'll import the other wallets' master public key, so each participant can compute addresses that require all other wallets to sign as well.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T23:05:32.400Z
This is going far beyond the scope of your original question. If you want to know how to practically use a multisig using particular wallet software, I recommend opening a new question for that with all relevant details.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T23:06:09.360Z
We are still talking about bitcoin core (bitcoin-cli is the command line version of it), so, let's resume the talk:

Do we have to run that command in each node?

If so, then Bitcoin Docs need to be updated with proper security information, because the current multisignature tutorial is anti-security oriented
Otijun
CC BY-SA 4.0
2023-11-10T23:12:16.203Z
You didn't mention Bitcoin Core before, I was just answering your question as posted. Bitcoin Core does have documentation for multisig setups (https://github.com/bitcoin/bitcoin/blob/master/doc/multisig-tutorial.md), but if you have further questions on that, please open a new question. Here you just asked why multisig setups are secure in general.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T23:15:48.123Z
Even if I end up asking there about it we will still end up talking about the process of how Bitcoin public keys are derrived in a multisignature process. So, it was okay to ask it here.

I thank you mister @PieterWuille for taking your time in replying me, and making me realize that every single address has to be generated in a separated wallet, not in the same wallet. Thank you for the detailed explanations!!
Otijun
CC BY-SA 4.0
2023-11-10T23:15:58.317Z
@LeaBit Why? A man needs to prove. He did, I appreciated his help and took my hat off for his time.
Otijun
CC BY-SA 4.0
2023-11-10T23:20:34.593Z
No, the addresses can be generated by any wallet. But they all involve public keys from all wallets, so those need to be shared beforehand.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T23:23:00.373Z
Okay, let me bother you again with one more question to be 1000% sure: @PieterWuille

To guarantee no single point of compromise, it would be better to generate every address on a separated encrypted wallet ?
Otijun
CC BY-SA 4.0
2023-11-11T03:30:42.147Z
That has nothing to do with your original question. If you want to ask about practical multisig setups, please open another question.
Pieter Wuille
CC BY-SA 4.0
2023-11-10T22:31:38.407Z
2023-11-10T22:31:38.407Z
Pieter Wuille
<p>When an attacker has access to the private key of the wallet, he can dump the private keys of every address used for the multisign address(es).</p>
<p>So, what's the point of multi sign addresses when there's a single point of compromising the security of the Bitcoins?</p>
<p>Why don't we have a multi signature wallet? A wallet that requires multiple private keys to be opened.</p>

<security><api><multi-signature><wallet-security><data-security>
What's the point of Multi Signature Addresses?
Otijun
# What's the point of Multi Signature Addresses?

(Asked by: username_0 on 2023-11-10)

When an attacker has access to the private key of the wallet, he can dump the private keys of every address used for the multisign address(es).

So, what's the point of multi sign addresses when there's a single point of compromising the security of the Bitcoins?

Why don't we have a multi signature wallet? A wallet that requires multiple private keys to be opened.

**Tags:** security, api, multi-signature, wallet-security, data-security


---

## 1 answers

### Answer by username_1 on 2023-11-10. Score: 3 | Accepted answer

> When an attacker has access to the private key of the wallet, he can dump the private keys of every address used for the multisign address(es).

In the case of multisig addresses, there are *multiple* participating wallets, and multiple need to sign.

> So, what's the point of multi sign addresses when there's a single point of compromising the security of the Bitcoins?

Compromising a single wallet is exactly what multisig protects against.

> Why don't we have a multi signature wallet? A wallet that requires multiple private keys to be opened.

There are several. Some are commercial services, where one of the participants is the service operator (who then e.g. requires 2FA for signing). Others are advanced software that needs configuration to use.

> **Comments:**
> **username_0**: Got it now, but then, why would we generate all multisign addresses inside the same wallet? Wouldn't we have to generate every address in a separate wallet for every address?  
> **username_1**: Each address will require signing with a list of public keys, one from each wallet. Typical schemes for address generation permit wallets to share their (master) public key, so that co-signers (and others) can derive multiple public keys at once. This means no communication with the wallets is needed for each new address.  
> **username_0**: "one from each wallet", which wallets? Bitcoin documentation does not specify that there are multiple wallets in the multisig process, rather, it suggests generating the addresses in the same wallet.  
> **username_0**: If we want a real Multisignature setup, with let's say 5 nodes, It looks to me, and please correct me if I am wrong, that we would have to run the command:   bitcoin-cli importaddress "multisig_address_generated_in_node_1" "" false  inside nodes 2,3,4,5.  Only this way we can achieve a real multisignature wallet, multisignature address having all of them a different private key  
> **username_1**: In practice, in a multisig wallet, you'll import the other wallets' master public key, so each participant can compute addresses that require all other wallets to sign as well.  
> **username_1**: This is going far beyond the scope of your original question. If you want to know how to practically use a multisig using particular wallet software, I recommend opening a new question for that with all relevant details.  
> **username_0**: We are still talking about bitcoin core (bitcoin-cli is the command line version of it), so, let's resume the talk:  Do we have to run that command in each node?  If so, then Bitcoin Docs need to be updated with proper security information, because the current multisignature tutorial is anti-security oriented  
> **username_1**: You didn't mention Bitcoin Core before, I was just answering your question as posted. Bitcoin Core does have documentation for multisig setups (https://github.com/bitcoin/bitcoin/blob/master/doc/multisig-tutorial.md), but if you have further questions on that, please open a new question. Here you just asked why multisig setups are secure in general.  
> **username_0**: Even if I end up asking there about it we will still end up talking about the process of how Bitcoin public keys are derrived in a multisignature process. So, it was okay to ask it here.  I thank you mister @username_1 for taking your time in replying me, and making me realize that every single address has to be generated in a separated wallet, not in the same wallet. Thank you for the detailed explanations!!  
> **username_0**: @LeaBit Why? A man needs to prove. He did, I appreciated his help and took my hat off for his time.  
> **username_1**: No, the addresses can be generated by any wallet. But they all involve public keys from all wallets, so those need to be shared beforehand.  
> **username_0**: Okay, let me bother you again with one more question to be 1000% sure: @username_1  To guarantee no single point of compromise, it would be better to generate every address on a separated encrypted wallet ?  
> **username_1**: That has nothing to do with your original question. If you want to ask about practical multisig setups, please open another question.  

---

