<blockquote>
<p><strong>In say a 2 of 3 multi-sig setup, do such private keys (base 58 or even Hexadecimal) exist under the hood.</strong></p>
</blockquote>
<p>Any cryptographic key of any type, Bitcoin or other, on a computer, is representable in hexadecimal, in octal, in binary, in base58, in base64 and in any other representation used on computers. The keys are just numbers and the various encodings listed are just different visual representations of the same number.</p>
<p>From what I have read, a multisig setup uses the private and public keys that are usable for ordinary transactions.</p>
<p>In <a href="https://en.bitcoin.it/wiki/Multi-signature" rel="nofollow noreferrer">https://en.bitcoin.it/wiki/Multi-signature</a> it says:</p>
<blockquote>
<h2>Creating a multi-signature address with Bitcoin-Qt</h2>
<p>A 2-of-3 multisig address can be created by following these steps:</p>
<ol>
<li><p>Gather (or generate) 3 bitcoin addresses, on whichever machines will be participating, using <code>getnewaddress</code> or <code>getaccountaddress</code> RPC commands (or copy and paste from the GUI).</p>
</li>
<li><p>Get their public keys using the <code>validateaddress</code> RPC command 3 times.</p>
</li>
<li><p>Then create a 2-of-3 multisig address using addmultisigaddress; e.g.,</p>
<pre><code>bitcoind addmultisigaddress 2 '[&quot;044322868cb17d64dcc22185ae2d4493111d73244c3668f8ac79ecc79c0ba8d30a6756d0fa20157 709af3281cc721c7f53321a8cabda29b77900b7e4fe0174b114&quot;,&quot;..second pubkey..&quot;,&quot;..third pubkey..&quot;]'
</code></pre>
<p><code>addmultisigaddress</code> returns the multi-signature address. Be a little careful, the public keys are raw hexadecimal and don't contain checksums like bitcoin addresses do. You can then send funds into that 2-of-3 transaction using the normal sendtoaddress/sendmany RPC commands, or the GUI (or anything that's been updated to recognize multisig addresses)</p>
</li>
</ol>
</blockquote>
<p>I think that the suggested use of <code>getnewaddress</code> in step one shows that keys used are the ones we are familiar with from ordinary single-key transactions.</p>

CC BY-SA 4.0
2023-01-17T21:18:58.843Z
2023-01-17T21:33:49.020Z
2023-01-17T21:33:49.020Z
RedGrittyBrick
<p>I know from using bip39 to build wallets, that each receiving address and corresponding public address does have a base58 private key behind it.  And if I know this private key, I can sweep it separate and apart from my HW wallet, and I can move any funds stored there. I've done it.</p>
<p>Now my question: In say a 2 of 3 multi-sig setup, do such private keys (base 58 or even Hexadecimal) exist under the hood. And if I possessed these, could they be combined together somehow to sign a transaction outside of the conventional bip39 wallet structure?</p>
<p>Thanks!</p>

<wallet><private-key><multi-signature>
Are there old school Base58 or hex private keys behind a newer HW wallet multisig public address? And can I use them to spend?
George
# Are there old school Base58 or hex private keys behind a newer HW wallet multisig public address? And can I use them to spend?

(Asked by: username_0 on 2023-01-17)

I know from using bip39 to build wallets, that each receiving address and corresponding public address does have a base58 private key behind it. And if I know this private key, I can sweep it separate and apart from my HW wallet, and I can move any funds stored there. I've done it.

Now my question: In say a 2 of 3 multi-sig setup, do such private keys (base 58 or even Hexadecimal) exist under the hood. And if I possessed these, could they be combined together somehow to sign a transaction outside of the conventional bip39 wallet structure?

Thanks!

**Tags:** wallet, private-key, multi-signature


---

## 1 answers

### Answer by username_1 on 2023-01-17. Score: 1

> **In say a 2 of 3 multi-sig setup, do such private keys (base 58 or even Hexadecimal) exist under the hood.**

Any cryptographic key of any type, Bitcoin or other, on a computer, is representable in hexadecimal, in octal, in binary, in base58, in base64 and in any other representation used on computers. The keys are just numbers and the various encodings listed are just different visual representations of the same number.

From what I have read, a multisig setup uses the private and public keys that are usable for ordinary transactions.

In <https://en.bitcoin.it/wiki/Multi-signature> it says:

> ## Creating a multi-signature address with Bitcoin-Qt
>
> A 2-of-3 multisig address can be created by following these steps:
>
> 1. Gather (or generate) 3 bitcoin addresses, on whichever machines will be participating, using `getnewaddress` or `getaccountaddress` RPC commands (or copy and paste from the GUI).
> 2. Get their public keys using the `validateaddress` RPC command 3 times.
> 3. Then create a 2-of-3 multisig address using addmultisigaddress; e.g.,
>
>    ```
>    bitcoind addmultisigaddress 2 '["044322868cb17d64dcc22185ae2d4493111d73244c3668f8ac79ecc79c0ba8d30a6756d0fa20157 709af3281cc721c7f53321a8cabda29b77900b7e4fe0174b114","..second pubkey..","..third pubkey.."]'
>
>    ```
>
>    `addmultisigaddress` returns the multi-signature address. Be a little careful, the public keys are raw hexadecimal and don't contain checksums like bitcoin addresses do. You can then send funds into that 2-of-3 transaction using the normal sendtoaddress/sendmany RPC commands, or the GUI (or anything that's been updated to recognize multisig addresses)

I think that the suggested use of `getnewaddress` in step one shows that keys used are the ones we are familiar with from ordinary single-key transactions.


---

