|
|
Does Alice send Bob (unencrypted) instructions for making a lock that her (private) key will open;
No. This is public. Alice can broadcast this, if she wants.
such that knowledge of how to make the lock doesn't also provide the knowledge of how to unlock it?
This is the counter-intuitive bit, of course. And it is considered a pretty neat idea, but yeah, you can give away the "lock" without saying anything about the "key".
Here is the technical stuff..
In RSA cryptography, what you have is a modulus, N, which is public and is generally a product N=pq, where p, q are primes and highly secret.
Alice chooses a number, d, coprime to (p-1)(q-1) and finds a coprime number, e which
so that de=1 modulo (p-1)(q-1), because this makes the math work.
This is fairly easy to do. Now you send Bob the number d, the modulus N and tell him to encypt a message, given by some number m, by sending c=m^e.
Alice decrypts c, by working out c^d, which equals m, modulo N (this is where you use some well known facts of modular arithmetic to see that the properties of e and d unsure that this process is a genuine reversal.)
The number e works as the lock here. Anyone can raise to the power e, but going in reverse probably involves finding d. Which is hard.
The obvious way to work out d, is to find p and q. Knowing p and q, then you can work out (p-1)(q-1), of course. Then, knowing e, which is public after all, makes it easy to work out d, either by trial and error or by Euclid's algorithm.
All that isn't "ludicrously simple", of course. But it is fairly easy. |
|
|