<p>According to their website <a href="https://www.bitgo.com/info/solutions#wallet" rel="nofollow noreferrer">Wallet</a> They use <a href="https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki" rel="nofollow noreferrer">BIP32 Hierarchical Deterministic</a> wallet. This is a way to link child addresses to the "wallet address".</p>

<h2>HD Wallets (BIP 32)</h2>

<p>Basically, your "Wallet Address" is the Master Node in the hierarchy. You can derive any descendant addresses in the hierarchy by knowing it's node location (eg. <code>m/0/1</code> is the 2nd grandchild). Using the Child Key Derivation Function you can derive any key pair deterministically from the Master Seed (usually a mnemonic phrase you set up the first time in your wallet).</p>

<p>Here is a diagram from the BIP:
<a href="https://i.sstatic.net/VUVs6.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/VUVs6.png" alt="BIP32 HD Wallets"></a></p>

<h1>Warnings</h1>

<p>TL;DR: Keep all of your private keys (and especially your seed phrase!) safe and you should be ok.</p>

<p>Unless your wallet does hardened child keys, you may be exposing your parent private key if your parent extended key and any child private key is leaked:</p>

<blockquote>
  <p>Knowledge of a parent extended public key plus any non-hardened
  private key descending from it is equivalent to knowing the parent
  extended private key (and thus every private and public key descending
  from it)</p>
</blockquote>

CC BY-SA 4.0
2018-07-11T07:50:42.953Z
Thank you. So is it possible to create Hierarchical Deterministic wallets in other currencies too (e.g. bitcoin cash, litecoin and ethereum)?
Gagan
CC BY-SA 4.0
2018-07-11T12:05:45.363Z
It is a BIP (Bitcoin Improvement Protocol) so I don't know if there are standards for the others, but it's just cryptography, so theroetically the answer is yes. Whether or not your wallet does it that way is up to the wallet developers.
JBaczuk
CC BY-SA 4.0
2018-07-12T11:24:56.960Z
So according to my understanding, I can create sub wallets from master node and can further go down the tree and create more sub wallets/accounts. So can I also create master seed for each sub wallets? 

Scenario is that I'm not the owner of the master node seed but controls a branch of tree. Can I create a master seed for the main wallet I hold so that I can recover all the addresses in case i lost my wallet?
Gagan
CC BY-SA 4.0
2018-07-10T14:38:19.730Z
2018-07-10T14:38:19.730Z
JBaczuk
<p>The wallet is simply a logical separation (or group, in this case). It simply means that multiple keys are kept in the same wallet.</p>

<p>As far as the blockchain is concerned, there is no wallet, just a set of output scripts, controlled by private keys.</p>

CC BY-SA 4.0
2018-07-10T14:06:36.967Z
2018-07-10T14:06:36.967Z
Raghav Sood
<p>The described behavior is not unique to BitGo:
wallets in Bitcoin generally track a collection of addresses. In fact, it is considered bad practice to reuse the same address (see <a href="/questions/tagged/address-reuse" class="post-tag" title="show questions tagged &#39;address-reuse&#39;" rel="tag">address-reuse</a>) for multiple payments due to privacy concerns.</p>

<p>As <a href="https://bitcoin.stackexchange.com/a/77050/5406">JBaczuk</a> mentioned, BitGo uses Hierarchical Deterministic wallets. Hereby, BitGo exclusively employs 2-of-3 multisig addresses, which means that the body of addresses in a wallet are linked by all being derived from the same three master private keys and their corresponding keychains. As the name implies addresses are deterministically derived, which means that any number of addresses can be generated and any of these addresses can be recalculated with the knowledge of the three keys and the derivation path of an address.</p>

<p>On the V1 platform of BitGo, the first address of a wallet also seconds as the wallet identifier. On the V2 platform, wallet identifiers have a separate format from Bitcoin addresses. The wallet address is perfectly capable of receiving funds, although it may be preferable to start with the first derived address. A new address should be used for every subsequent payment or invoice after that.</p>

<p>Note that BitGo is only adding new features to the V2 platform, so if you are just starting to use BitGo and created a V1 Bitcoin wallet, you may want to use a V2 Bitcoin wallet instead to get access to the latest and future features.</p>

<hr>

<p>Disclosure: I'm a software engineer at BitGo.</p>

CC BY-SA 4.0
2018-07-11T07:49:55.343Z
Thanks @Murch. So can we create Hierarchical Deterministic wallets in other currencies too (e.g. bitcoin cash, litecoin and ethereum)?
Gagan
CC BY-SA 4.0
2018-07-11T16:50:39.897Z
Bitcoin Cash, Litecoin, and Bitcoin Gold are compatible with the same scheme as I described above, and the same is used by BitGo as well. Ethereum generally reuses the same account for one wallet, but one may use forwarder addresses to give out unique addresses.
Murch
CC BY-SA 4.0
2018-07-11T03:47:57.087Z
2018-07-11T03:47:57.087Z
Murch
<p>BitGo has a feature where you can have multiple addresses under a wallet. The wallet also has its own address. Now suppose I have two addresses under my wallet. This means for any user to send me BTC, I can give one out of any three addresses which is 2 addresses + 1 wallet address. </p>

<p>How is that even possible to link two bitcoin addresses?</p>

<bip32-hd-wallets><receiving><bitgo>
How to link a bitcoin address to a wallet address?
Gagan
# How to link a bitcoin address to a wallet address?

(Asked by: username_0 on 2018-07-10)

BitGo has a feature where you can have multiple addresses under a wallet. The wallet also has its own address. Now suppose I have two addresses under my wallet. This means for any user to send me BTC, I can give one out of any three addresses which is 2 addresses + 1 wallet address.

How is that even possible to link two bitcoin addresses?

**Tags:** bip32-hd-wallets, receiving, bitgo


---

## 3 answers

### Answer by username_1 on 2018-07-10. Score: 2 | Accepted answer

According to their website [Wallet](https://www.bitgo.com/info/solutions#wallet) They use [BIP32 Hierarchical Deterministic](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) wallet. This is a way to link child addresses to the "wallet address".

## HD Wallets (BIP 32)

Basically, your "Wallet Address" is the Master Node in the hierarchy. You can derive any descendant addresses in the hierarchy by knowing it's node location (eg. `m/0/1` is the 2nd grandchild). Using the Child Key Derivation Function you can derive any key pair deterministically from the Master Seed (usually a mnemonic phrase you set up the first time in your wallet).

Here is a diagram from the BIP:
[![BIP32 HD Wallets](https://i.sstatic.net/VUVs6.png)](https://i.sstatic.net/VUVs6.png)

# Warnings

TL;DR: Keep all of your private keys (and especially your seed phrase!) safe and you should be ok.

Unless your wallet does hardened child keys, you may be exposing your parent private key if your parent extended key and any child private key is leaked:

> Knowledge of a parent extended public key plus any non-hardened
> private key descending from it is equivalent to knowing the parent
> extended private key (and thus every private and public key descending
> from it)

> **Comments:**
> **username_0**: Thank you. So is it possible to create Hierarchical Deterministic wallets in other currencies too (e.g. bitcoin cash, litecoin and ethereum)?  
> **username_1**: It is a BIP (Bitcoin Improvement Protocol) so I don't know if there are standards for the others, but it's just cryptography, so theroetically the answer is yes. Whether or not your wallet does it that way is up to the wallet developers.  
> **username_0**: So according to my understanding, I can create sub wallets from master node and can further go down the tree and create more sub wallets/accounts. So can I also create master seed for each sub wallets?   Scenario is that I'm not the owner of the master node seed but controls a branch of tree. Can I create a master seed for the main wallet I hold so that I can recover all the addresses in case i lost my wallet?  

---

### Answer by username_2 on 2018-07-10. Score: 2

The wallet is simply a logical separation (or group, in this case). It simply means that multiple keys are kept in the same wallet.

As far as the blockchain is concerned, there is no wallet, just a set of output scripts, controlled by private keys.


---

### Answer by username_3 on 2018-07-11. Score: 1

The described behavior is not unique to BitGo:
wallets in Bitcoin generally track a collection of addresses. In fact, it is considered bad practice to reuse the same address (see [address-reuse](/questions/tagged/address-reuse "show questions tagged 'address-reuse'")) for multiple payments due to privacy concerns.

As [username_1](https://bitcoin.stackexchange.com/a/77050/5406) mentioned, BitGo uses Hierarchical Deterministic wallets. Hereby, BitGo exclusively employs 2-of-3 multisig addresses, which means that the body of addresses in a wallet are linked by all being derived from the same three master private keys and their corresponding keychains. As the name implies addresses are deterministically derived, which means that any number of addresses can be generated and any of these addresses can be recalculated with the knowledge of the three keys and the derivation path of an address.

On the V1 platform of BitGo, the first address of a wallet also seconds as the wallet identifier. On the V2 platform, wallet identifiers have a separate format from Bitcoin addresses. The wallet address is perfectly capable of receiving funds, although it may be preferable to start with the first derived address. A new address should be used for every subsequent payment or invoice after that.

Note that BitGo is only adding new features to the V2 platform, so if you are just starting to use BitGo and created a V1 Bitcoin wallet, you may want to use a V2 Bitcoin wallet instead to get access to the latest and future features.

---

Disclosure: I'm a software engineer at BitGo.

> **Comments:**
> **username_0**: Thanks @username_3. So can we create Hierarchical Deterministic wallets in other currencies too (e.g. bitcoin cash, litecoin and ethereum)?  
> **username_3**: Bitcoin Cash, Litecoin, and Bitcoin Gold are compatible with the same scheme as I described above, and the same is used by BitGo as well. Ethereum generally reuses the same account for one wallet, but one may use forwarder addresses to give out unique addresses.  

---

