i'm already have HD wallet by default, with Bitcoin Core 0.15 - right?
If you created your wallet in 0.15, yes.
If you created your wallet in an old version (< 0.13, i think) and upgraded it, yes.
If you created your wallet before 0.13 and didn't upgrade the wallet with the startup command
-upgradewallet, then no.
Are you sure I dont have to enter password and decrypt wallet to refill my keypool? Because I dont think so. And I dont want to enter password for this wallet on online computer.
You don't have to "refill your keypool".
You can simply generate addresses on demand, without having to worry about inconsistency.
The first 100 generated addresses on your linux machine will be equivalent to the first 100 generated addresses on your windows machine.
The next 1000 (created on linux) will match those 1000 (created on windows), and so on.
So I made a tests:
bitcoin-cli getwalletinfo
{
"walletname": "wallet.dat",
"walletversion": 139900,
"balance": 0.00000000,
"unconfirmed_balance": 0.00000000,
"immature_balance": 0.00000000,
"txcount": 0,
"keypoololdest": 1518648916,
"keypoolsize": 944,
"keypoolsize_hd_internal": 1000,
"unlocked_until": 0,
"paytxfee": 0.00000000,
I have 1000 keys in pool by default.
Then I run: while true; do bitcoin-cli getnewaddress;done
And now:
"keypoolsize": 0,
"keypoolsize_hd_internal": 1000,
and
bitcoin-cli getnewaddress
error code: -12
error message:
Error: Keypool ran out, please call keypoolrefill first
and
bitcoin-cli keypoolrefill 1000
error code: -13
error message:
Error: Please enter the wallet passphrase with walletpassphrase first.
So, first, when my keypool empty - I cannot generate new bitcoin addresses = Payment system not working
Second - I have to enter password for wallet. On online computer. It's bad.