CS588: Cryptology - Principles and Applications, Fall 2001
Manifest: Wednesday 19 September 2001
Assignments Due Before 21 September Email or talk to me about your project topic ideas Wednesday, 26 September Problem Set 2 Monday, 1 October Projects Preliminary Proposal
R.L. Rivest, A. Shamir, L. Adleman. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems , 1978. - This is the original RSA paper, perhaps the most important paper in any field in the last 30 years. You should read it in the Rotunda or a lawn garden.
Code Book, Chapter 6
[optional] Whitfield Diffie and Martin Hellman. New Directions in Cryptography, 1976. (This is a PDF conversion of an optical scan, hence all the language problems.)
Diffie-Hellman Key Agreement
- Choose public numbers: q (large prime number), α (primitive root of q)
- A generates random XA and sends B: YA = αXA mod q.
- B generates random XB and sends A: YB = αXB mod q.
- A calculates secret key: K = (YB) XA mod q.
- B calculates secret key: K = (YA) XB mod q.
Transmitted in clear: q, α, YA = αXA mod q, YB = αXB mod q.
Only A knows: XA. Only B knows: XB.
Primitive Rootα is a primitive root of q if for all 1 ≤ n < q, there is some m, 1 ≤ m < q such that αm = n mod qSame Keys are Generated:K = (YB) XA mod q = (YA) XB mod q.
(YB) XA mod q
= (αXB mod q) XA mod q
= αXBXA mod q
= αXAXB mod q
(YA) XB mod q
= (αXA mod q) XB mod q
= αXAXB mod q
- Prophet of Privacy, Wired Magazine Feature on Whitfield Diffie. November 1994.
- Diffie-Hellman Key Exchange - A Non-Mathematician's Explanation
- Whitfield Diffie and Susan Landau, Privacy on the Line: The Politics of Wiretapping and Encryption, 1998.
- New York Times article on history of public-key cryptography, December 24, 1997.
- Ellis, Cocks and Williamson's original memos on non-secret encryption
- Why is key distribution important?
- What are some ways to distribute secret keys?
- How does Diffie-Hellman key agreement work?
- What does its security depend on?
Useful Proof Methods
Proof by intimidation: "Trivial" or "obvious."
Proof by exhaustion: An issue or two of a journal devoted to your proof is useful.
Proof by omission: ``The reader may easily supply the details'', ``The other 253 cases are analogous''
Proof by obfuscation: A long plotless sequence of true and/or meaningless syntactically related statements.
Proof by funding: How could three different government agencies be wrong?
Proof by lack of funding: How could anything funded by those bozos be correct?
Proof by democracy: A lot of people believe it's true: how could they all be wrong?
Proof by reference to inaccessible literature: The author cites a simple corollary of a theorem to be found in a privately circulated memoir of the Icelandic Philological Society, 1883. This works even better if the paper has never been translated from the original Icelandic.
Proof by forward reference: Reference is usually to a forthcoming paper of the author, which is often not as forthcoming as at first.
Proof by flashy graphics: A moving sequence of shaded, 3D color models will convince anyone that your object recognition algorithm works. An SGI workstation is helpful here. Proof by vehement assertion: It is useful to have some kind of authority relation to the audience, so this is particularly useful in classroom settings.
Proof by vigorous handwaving: Works well in a classroom, seminar, or workshop setting. Proof by cumbersome notation: Best done with access to at least four alphabets, special symbols, and the newest release of LaTeX.
Proof by lack of space: "The proof is not detailled due to lack of space in this proceedings..." works well in conjunction with proof by forward reference.
Selected from http://www.ai.sri.com/~luong/research/proof.html.
None of these proof methods are suggested in your CS588 problem sets or exams.
University of Virginia
Department of Computer Science
CS 588: Cryptology - Principles and Applications