<blockquote>
  <p>Why do some wallets advice me not using internal address to receive funds?</p>
</blockquote>

<p>From <a href="https://medium.com/bitcraft/hd-wallets-explained-from-high-level-to-nuts-and-bolts-9a41545f5b0" rel="nofollow noreferrer">this article on HD Wallets</a></p>

<blockquote>
  <p>Then we have the chain node, derived to a path of either 0 or 1. 0 is the external key pair chain, and is used for generating new public addresses. 1 is the internal keychain and is used for things like change addresses (in Bitcoin every transaction must have an address to send the excess funds to. The “change” of the transaction)...It’s because this is a derivation path that’s been formally agreed upon by the different crypto communities. This is significant because if I wanted to, I could create my own tree following any made up standard I want and create and sign valid transactions from the public/private keys. But could any other wallet ever regenerate that structure? What happens if my app goes off the market? The user’s money is locked into a completely arbitrary private/public key tree. Not the best situation to be in. Therefore, we hold on to these artifacts of the past because an extra derivation or two is a small price to pay for consensus.</p>
</blockquote>

<p>TLDR: It is for organizational purposes. Wallet developers follow BIP44's derivation path regardless of currency for consensus reasons. It doesn't make a lot of sense for Ethereum HD wallets to utilize the <code>account</code> field since addresses are already accounts in ethereum, but some wallets do. </p>

CC BY-SA 4.0
2018-05-24T22:45:55.727Z
2018-05-24T22:45:55.727Z
arshbot
<p>There is some explanation at <a href="https://bitcoin.stackexchange.com/a/74541/75001">this answer</a>.</p>

<p>TLDR; The change is for a sender not a receiver. Internal and external addresses are not necessarily handled the same in all parts of the software.</p>

CC BY-SA 4.0
2018-05-13T09:08:53.087Z
I get that wallets implementing BIP44 may treat internal addresses differently now. But what I wanted to understand is which particular ideas are behind the concept. I understand any other field in BIP44 specification. The only thing that makes sense a bit, is it makes account analysis simpler as it is more clear which money 'flew into wallet'.
jakob
CC BY-SA 4.0
2018-05-12T08:09:22.207Z
2018-05-12T08:09:22.207Z
Willtech
<p>I always wondered why BIP44 HD wallet differentiate between internal change addresses (m/44'/0'/0'/1/*) and external receiving (m/44'/0'/0'/0/*)? Why do some wallets advice me not using internal address to receive funds? It seems to me superfluous complexity.</p>

<bip32-hd-wallets><change>
BIP44 and change addresses
jakob
# BIP44 and change addresses

(Asked by: username_0 on 2018-05-12)

I always wondered why BIP44 HD wallet differentiate between internal change addresses (m/44'/0'/0'/1/\*) and external receiving (m/44'/0'/0'/0/\*)? Why do some wallets advice me not using internal address to receive funds? It seems to me superfluous complexity.

**Tags:** bip32-hd-wallets, change


---

## 2 answers

### Answer by username_1 on 2018-05-24. Score: 1

> Why do some wallets advice me not using internal address to receive funds?

From [this article on HD Wallets](https://medium.com/bitcraft/hd-wallets-explained-from-high-level-to-nuts-and-bolts-9a41545f5b0)

> Then we have the chain node, derived to a path of either 0 or 1. 0 is the external key pair chain, and is used for generating new public addresses. 1 is the internal keychain and is used for things like change addresses (in Bitcoin every transaction must have an address to send the excess funds to. The “change” of the transaction)...It’s because this is a derivation path that’s been formally agreed upon by the different crypto communities. This is significant because if I wanted to, I could create my own tree following any made up standard I want and create and sign valid transactions from the public/private keys. But could any other wallet ever regenerate that structure? What happens if my app goes off the market? The user’s money is locked into a completely arbitrary private/public key tree. Not the best situation to be in. Therefore, we hold on to these artifacts of the past because an extra derivation or two is a small price to pay for consensus.

TLDR: It is for organizational purposes. Wallet developers follow BIP44's derivation path regardless of currency for consensus reasons. It doesn't make a lot of sense for Ethereum HD wallets to utilize the `account` field since addresses are already accounts in ethereum, but some wallets do.


---

### Answer by username_2 on 2018-05-12. Score: 0

There is some explanation at [this answer](https://bitcoin.stackexchange.com/a/74541/75001).

TLDR; The change is for a sender not a receiver. Internal and external addresses are not necessarily handled the same in all parts of the software.

> **Comments:**
> **username_0**: I get that wallets implementing BIP44 may treat internal addresses differently now. But what I wanted to understand is which particular ideas are behind the concept. I understand any other field in BIP44 specification. The only thing that makes sense a bit, is it makes account analysis simpler as it is more clear which money 'flew into wallet'.  

---

