Very simplified, it takes your private key and a derivation path and hashes that. The derivation path is just a sequence of numbers, and if you increment one of those numbers, you get a new private key.

The fun bit is you can apply the same derivation path to the public key, and get a new address which belongs to the derived private key.

Therefore if you have the master private key on a separate device, and the master public key somewhere else, they don't need to communicate to get a new address to receive, which you have the private key to spend for offline.

This is very simplified, there's probably a few more steps involved, but this (I think) is the gist of why you don't need internet.

Reply to this note

Please Login to reply.

Discussion

This is a playground where you can play around. If you click generate, you'll see a list of addresses, public keys and private keys at the bottom of the page. These are all generated from the same entropy, and you don't need anything else.

WRNING: do NOT use private keys based off of this website. This is a public website and you should never put private keys in there or use private keys generated from a public website.

https://iancoleman.io/bip39/

I... Don't really follow this yet.

No problem, they're tricky concepts to get your head around. Are you more of a visual learner?

Maybe something like https://www.youtube.com/watch?v=bBC-nXj3Ng4 helps, although I'm not sure if this actually covers your questions.

If you load the same key and the correct path into different wallets, and it properly generates a new address for every transaction, would the two wallets generate the same address in a sequential fashion? Or could it conceivably sit there for years, searching through billions of addresses?