what happens is that when you request a new address your wallet generates a new private key first and then uses that key to derive your public key and then converts that public key to a desired address format that you want.
- a master private key
- a master public key
the design here is unique and is in a way that you can use your master public key to derive the future public keys without needing the master private key. but this master public key is derived from that master private key so in a way it is still the same as above.
meaning you first created a private key then used that to get the public keys.
so your private key(s) is that master key (xprv)
but how can I sign transaction? using my master private key? (xprv)
OHHHH!!! I GET IT.
so one master key can be use to sign hundreds of transaction for my public keys created by the "Master public key"
and master private key can be use to restore our wallet with other wallet provider.
so now the only thing that I have to put attention to is Master Private Key (xprv)