There are 2 options:
2) (Not recommended) Each user has an unique ID and new addresses are generated via seed, so they are actually pre-generated and easy to recover if you now the seed. Then it goes like that:
[seed]-> [Purpose][Coin][Account][External / Internal][address id]
m/44'/0'/111'/0/1 -> Bitcoin address, user_id 112, second address
m/44'/145'/48271'/0/3 -> Bitcoin Cash address, user_id 48271, fourth address
m/49'/0'/54'/0/0 -> Bitcoin SegWit address, user_id 55, first address
What are these seed? m/44'/0'/111'/0/1, m/44'/145'/48271'/0/3 , m/49'/0'/54'/0/0
I just thought made bunch of address from one bitcoin daemon.
Where is seed and how to know what seed used from above?
First: I don't like this approach. It is kinda 'dirty'.
The seed is your mnemonic seed. Your 12/18/24 word seed.
m/0'/0'/0 is a derivation path (
specified in BIP 32).
If you want to use a seed you have to actively generate one. Then derive private-/public- keypairs from your seed.
A better approach would be to use the xpub key or to generate a bunch of addresses and store them in your database. Then just link user ID's to the addresses in your database.