Public keys
Keys come in pairs; keep one half secret
- can’t derive the secret one from the public one
Can do digital signatures
Algorithms slow, keys large
Notes:
When you figure out the authentication problem, it gets replaced by the revocation problem… what happens if you lose control of your private key, and want to stop people using it? I call this “stepping on cockroaches”. “It’s turtles, all the way down.” -- Keith Bostic (or maybe Bertrand Russell).
Most public key algorithms are mathematically based. The well accepted ones are usually based on the difficulty of factoring or calculating discrete logarithms in finite fields or groups. Choosing your group carefully (elliptic curves) can speed things up and shrink the keys, but still nowhere near symmetric cryptography numbers.