Here’s a diagram showing a high level overview of what we’re going to be diving into in the next couple slides.
We start off with a private key that we generate randomly.
We then can use Elliptic Curve point scalar multiplication to derive a public key.
And then from there, we can use hash functions to finally arrive at our Bitcoin address.
One important note is that the processes mentioned — the elliptic curve point scalar multiplication and the hashing — are all one-way processes.
We can go forward, but not backwards.
A private key wouldn’t be so private if we could guess the private key from the corresponding public key or address.
Alright, so let’s take a look at elliptic curves first.