<blockquote>
  <p>What's "non HD split wallet"? What's "pre split keypool"?</p>
</blockquote>

<p>Bitcoin Core uses something called HD chain split for generating private keys. This means that it derives private keys using two different derivation paths to distinguish between addresses that the wallet gives out and change addresses (also known as internal addresses). This split also means that there are two different keypools.</p>

<p>However the initial implementation of HD wallets in Bitcoin Core did not use HD chain split hence such wallets are non HD split wallets.</p>

<p>Furthermore, non HD split wallets and non-HD wallets had only one keypool from which all addresses (including change) were retrieved from. When upgrading such wallets, they need to be upgraded to a specific version that allows upgrading the unified keypool to the split keypool. This results in those wallets having a third keypool called the pre-split keypool. This keypool contains all of the keys from the original unified keypool and lets that run out of keys before the split keypool is used.</p>

<blockquote>
  <p>What's "disabled private key"?</p>
</blockquote>

<p>Wallets can be created such that they will not have any private keys and are not allowed to contain private keys. Such wallets thus have private keys disabled. (this string should really say "with private keys disabled" not "with disabled private keys").</p>

CC BY-SA 4.0
2019-03-01T09:37:08.667Z
So "non HD split wallet" should be "non-split HD wallet" actually, because it's in fact a kind of HD wallet?
Chris Chen
CC BY-SA 4.0
2019-03-01T09:56:21.087Z
BTW, I hope future versions of Bitcoin Core could be able to manage the keys/addresses more clearly. Currently it's quite confusing to use Bitcoin Core
Chris Chen
CC BY-SA 4.0
2019-03-01T15:12:06.043Z
It should be "non HD-split" as we consider "HD-split" to be a type in addition to HD, and non-HD.
Ava Chow
CC BY-SA 4.0
2019-02-27T15:38:56.213Z
2019-02-27T15:38:56.213Z
Ava Chow
<p>I'm trying to localize following UI texts of Bitcoin Core, but I cannot understand them:</p>

<blockquote>
  <p>Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use -upgradewallet=169900 or -upgradewallet with no version specified.</p>
</blockquote>

<p>What's "non HD split wallet"? What's "pre split keypool"?</p>

<blockquote>
  <p>Warning: Private keys detected in wallet {%s} with disabled private keys</p>
</blockquote>

<p>What's "disabled private key"?</p>

<bitcoin-core>
Bitcoin Core has some confusing UI text
Chris Chen
# Bitcoin Core has some confusing UI text

(Asked by: username_0 on 2019-02-27)

I'm trying to localize following UI texts of Bitcoin Core, but I cannot understand them:

> Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use -upgradewallet=169900 or -upgradewallet with no version specified.

What's "non HD split wallet"? What's "pre split keypool"?

> Warning: Private keys detected in wallet {%s} with disabled private keys

What's "disabled private key"?

**Tags:** bitcoin-core


---

## 1 answers

### Answer by username_1 on 2019-02-27. Score: 1 | Accepted answer

> What's "non HD split wallet"? What's "pre split keypool"?

Bitcoin Core uses something called HD chain split for generating private keys. This means that it derives private keys using two different derivation paths to distinguish between addresses that the wallet gives out and change addresses (also known as internal addresses). This split also means that there are two different keypools.

However the initial implementation of HD wallets in Bitcoin Core did not use HD chain split hence such wallets are non HD split wallets.

Furthermore, non HD split wallets and non-HD wallets had only one keypool from which all addresses (including change) were retrieved from. When upgrading such wallets, they need to be upgraded to a specific version that allows upgrading the unified keypool to the split keypool. This results in those wallets having a third keypool called the pre-split keypool. This keypool contains all of the keys from the original unified keypool and lets that run out of keys before the split keypool is used.

> What's "disabled private key"?

Wallets can be created such that they will not have any private keys and are not allowed to contain private keys. Such wallets thus have private keys disabled. (this string should really say "with private keys disabled" not "with disabled private keys").

> **Comments:**
> **username_0**: So "non HD split wallet" should be "non-split HD wallet" actually, because it's in fact a kind of HD wallet?  
> **username_0**: BTW, I hope future versions of Bitcoin Core could be able to manage the keys/addresses more clearly. Currently it's quite confusing to use Bitcoin Core  
> **username_1**: It should be "non HD-split" as we consider "HD-split" to be a type in addition to HD, and non-HD.  

---

