The textbook in the class is Douglas R. Stinson, Cryptography: Theory and Practice (2nd edition) . This is a very good reference book for a lot of the material we will cover, but quite a lot of the material we will do is not covered by this book.
Below are pointers to both on-line and off-line background material for this class. You might find them especially helpful when you run into problems understanding something, would like to see an alternative treatment of some subject, etc.
(Notice of intellectual credit: The list I'm giving here started by editing a list compiled by Tal Malkin for the "intro to crypto" class she teaches at Columbia.)
S. Goldwasser and M. Bellare: Lecture Notes on Cryptography. This is the closest thing to a "text book" for this class. These are notes from a summer cryptography class given by profs. Shafi Goldwasser and Mihir Bellare at MIT. The treatment here is focused on the theoretical foundations of cryptography. This is similar to our approach in this class, although on a more advanced level and sometimes in a different order. I very much encourage you to look into this text for reference.
The following collections of lecture notes take a (more or less) similar approach to the one we take in this class (except of Bellare/Rogaway notes which emphasize symmetric setting more than we will).
Oded Goldreich's notes for his Foundation of Cryptography book are available on-line. Oded's work is a comprehensive treatment of the theoretical foundations of cryptography and it covers the material in far greater depth that our class. It is recommended as a background reading, especially for students who are interested in conducting research in cryptography.
The following is a comprehensive reference book for all areas in cryptography. It has a less careful approach to definitions and proofs of security than we do, but it is a very good reference text. It is available chapter by chapter from the book website:
On the opposite end of the theory-vs-practice spectrum, the following book presents only a very intuitive treatment of cryptography, and is a useful reference for software implementation (which we do not address in the class).
Some excellent references for computational number theory and applied algebra include:
Background reading on discrete math, probability, algorithms and complexity theory can be found in several of the above references (in particular the one by Shoup, by Menezes, van Oorschot, and Vanstone, and by Wenbo Mao. The following two books are excellent stand-alone textbooks for, respectively, complexity and algorithms:
Some interesting non-technical books about the history of cryptology (which will not be addressed in this class), include the following two, originally written in 1967 and 1999, respectively.