like what is happening exactly? software goes through whole blockchain db and looking at each single transaction if one or other address in single transaction is in pair with private key? is that the process? at least, this is how I imagine it.
like one transaction is:
xch9j4sefojefsjpo… send 0.01 to xch9gseopjesgpjoseg… and the change went to xchjipaijpvsvrsv3…
and now the software is trying if my private key is in match with outgoing address or incoming address, right? because sw has no idea which wallets were generated for me, it just knows private key… there is no information in blockchain which wallets are connected to one private key right…?
Each address ( public key ) has one pvt key, they are connected eternally, so yes in one respect its all visible, but no one can see who owns which address, or the pvt key.
No, your wallet knows exactly which addresses were created for you, as I explained, each address ( public key ) is linked to a corresponding pvt key.
Your wallet stores them all ( the ones you created).
I couldn’t make sense of what you wanted to know in the rest of your post.
If you care to rephrase it into specific questions, I’ll do my best to answer them.
I will try well I have created a new wallet - brand new 24 keys - you know… and it was syncing like 7 hours… but walled.db file is around 6GB - which makes no sense - there are NO transactions made so far (brand new wallet) so what is inside of this file?
I understand that inside blockchain.db - there are all transactions so 28GB size make sense. but size of walled.dat to be 6GB? like why? what is inside?
Does seem odd to me we keep blockchain database, which holds all transaction data.
We also have wallet database that’s also holding transaction data, that is already held in the blockchain database.