Formalities
Location and Hours
Please check the course schedule.
Staff
Feel free to coordinate reception hours with Benny and/or Rani via email.
Course Outline
This course will discuss basic building blocks of modern cryptography. Tentative topics include encryption,
data integrity, authentication and identification, digital signatures, elementary number theory, randomness
and pseudo-randomness, cryptographic protocols, and real world security systems.
As a byproduct, you might become acquainted with some symbolic mathematics software.
Travel Advisory!
Based on the feedback forms from 2007, most students thought the course was way too hard.
A few thought it was worth the effort.
This leaves the lecturer puzzled as to why so many (approx. 85) insisted on taking it.
As for students in future generations of this course (and same lecturer) - caveat emptor!
Administrativia
Recommended Prerequisites
- Linear Algebra
- Probability
- Algorithms
- Computational Models
- and most importantly, "mathematical maturity".
Grade
Based on final exam (70-80%) and homework assignments (30-20%).
Home Assignments
Homework submission is in singles or pairs. There will be a total of 3-4 problem sets consisting of both "dry" assignments
and a "wet" component (involving small Sage/Maple/Wolfram Alpha programs).
The homework portion of the grade is determined by the the weighted average of all assignments.
Reading
Text Books
- J. Katz and Y. Lindell, Introduction to Modern Cryptography, Chapman & Hall/CRC Press, 2007.
- V. Shoup, A Computational Introduction to Number Theory and Algebra (Version 1), 2005. Available online.
- D. Stinson, Cryptography Theory and Practice, CRC Press, 1996.
Recommended books
- A. Menezes, P. Van Oorschot, S. Vanstone, Handbook of Applied Cryptography, Available online.
- B. Schneier, Applied Cryptography, Wiley & Sons, 1996.
- P. Giblin, Primes and Programming: An Introduction to Number Theory with Computing, Cambridge University Press, 1993.
Classical Articles
- W. Diffie and M. Hellman, "New Directions in Cryptography", in IEEE Transactions on Information Theory, IT-22 no 6 (November 1976) pp. 644-654.
- R. Rivest, A. Shamir, and L. Adleman, "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems", CACM 21, pp. 120-126, Feb. 1978.
- A. Shamir, "How to Share a Secret", CACM 22, pp. 612-613, November 1979.