Syllabus: the course will be divided roughly into two parts,
which we may call classical cryptography and modern
cryptography; the mathematical ideas we will study in the two halves
of the course will be rather distinct from one another. In the first part
of the course, we will use probability, information theory,
and statistics to analyze (and break!) classical cryptosystems. We
will build our repertoire of techniques by considering toy
examples such as
substitution ciphers, and work towards examples of historical importance
such as the breaking of the Enigma cipher in World War II.
In the second
part of the course, we will discuss modern cryptographic protocols
for
tasks such as key exchange, signatures, and authentication. An important
goal
is to recognize that clever protocols can accomplish rather unexpected
feats (for
instance, elections in which any voter can verify that the ballots were
tallied correctly without violating the secret-ballot requirement). We
will study how many of these protocols are implemented in real-world
applications, especially using
one-way functions from number
theory. You use cryptography every day, without having to think about
it -- whenever you make a cell
phone call, buy something with a credit card, or log in to check your
email -- and a major goal of this course is to become more aware of this
aspect of
the world around us.
Textbook: Applied Cryptography (2nd ed.) by Bruce Schneier
Let me say a few words about the book. I looked at a number of
cryptography textbooks (including books written by computer scientists as
well as books written by mathematicians), and was not satisfied enough
with any of them to ask you to spend $100 on them. I went with Schneier's
book because it is inexpensive (less
than $40 from amazon.com last time I checked) and undeniably a
classic. The book does have a few drawbacks. First, it is more than
ten years old, and therefore a bit out of date; this won't bother us too
much, since this is a math course and not a cutting-edge
cryptography course, and the foundational mathematical techniques haven't
changed. However, we will notice it from time to time: for instance, AES,
which has replaced DES, is not
discussed in the book.
More significantly, the book is heavy on protocols (which it does very
well!) but short on mathematics, and we will often need to supplement the
textbook. (In fact we will not use the textbook much for the first part
of the course.) Fortunately there are many resources freely available on
the web, and whenever possible I will include a link to supplementary
material on the front page of the course website.