University of Virginia, Department of Computer Science CS588: Cryptology - Principles and Applications, Fall 2001

Manifest: Monday 24 September 2001
 Assignments Due Wednesday, 26 September Problem Set 2 Monday, 1 October Projects Preliminary Proposal

Before 25 September: Reread parts of RSA paper you didn't understand.

RSA Algorithm
1. Pick 2 large secret primes, p and q.
2. Let non-secret n = pq.
3. Choose e (non-secret) and d (secret) so: ed ≡ 1 mod (p - 1)(q - 1).
4. Encryption function (non-secret): E(M) = Me mod n.
5. Decryption function (secret): D(C) = Cd mod n.
A Dash of Number Theory
Euler's totient function: φ (n) = the number of positive integers < n which are relatively prime to n.
If n is prime, φ (n) = n - 1.

If p and q are prime: φ (p * q) = φ (p) * φ (q)

Euler's Theorem: 1 ≡ xφ (a) mod a.

Prime Number Theorem: π (x) (the number of primes not greater than x) is asymtotic to x / ln x.

Questions
• Why doesn't Diffie-Hellman solve all our problems?
• What is public-key cryptogrphy?
• What are the requirements on E and D?
• How does RSA work?
• How do you prove RSA's choice of E and D satisfy the requirements?

Real mathematics has no effects on war. No one has yet discovered any warlike purpose to be served by the theory of numbers.

G. H. Hardy, The Mathematician's Apology, 1940.