Old Wallet.dat Model: Individual Keys, Separate Backups
In the early Bitcoin Core wallets (pre-HD wallets), your wallet.dat stored each private key separately, independently generated and backed up. This approach meant:
Pros:
Each key is unique and unrelated to others—no master seed.
Compromise of one key doesn't expose others.
No risk of deriving all keys from a single master key.
Cons:
You had to back up your wallet frequently, because new receiving addresses were newly generated keys not derived from any seed.
Backup management was tedious and error-prone—missing a backup meant losing some funds.
No hierarchical deterministic structure, so no easy way to recover all keys from one backup.
Modern HD Wallets: Seed-Based, Hierarchical Keys
Modern wallets use BIP32/BIP39/BIP44 HD wallets, where:
One master seed (typically represented as 12 or 24 mnemonic words) generates a master private key (xprv).
From this, all private keys are derived deterministically via a hierarchical tree structure.
A single backup of the seed can restore the entire wallet and all derived addresses.