Projects in Cryptography, Codes, and Information Security
SM473, Projects in Cryptography, Codes, and Information Security: A capstone course on cryptography
- policy statement.
- tentative syllabus.
- my class lecture notes (with Sage and Sympy examples, and Sage code).
- single cell server and cloud server at the University of Washington.
- An example of a capstone paper (posted by permission of Midn Carson): John Nash's letters to NSA
Recommended text: M. Stamp and R. Low, Applied Cryptanalysis, Wiley, 2007.
Working Groups: The class is divided into two-member working groups. Each group will work on the homework together. Also, there will be class group activities such as groups solving each other's ciphers.
Quizzes: There are several quizzes (most are open notes, but are taken individually not in groups).
There will be hour exams and a final project. The final project is an individual project. Spring 2014-2015 projects had the following suggestions for the content of the final paper: describe a specific cipher with details on
the encryption process,
- the key space,
- a decryption process,
- a method of breaking the cipher and some indication of how complex that would be (even if it was simply a brute force attack).
Examples from spring 2014-2015:
- Midn N. Patterson and S. Lee, Steganography,
- Midn Felton, Algebraic attacks on stream ciphers,
- Midn K. Lee, The NIST process for selecting AES
Examples from spring 2012-2013:
Examples from spring 2013-2014:
Software: Using Sage (as in the textbook) can make the homework a lot easier and our cryptology calculations less trivial and more interesting.
Topics the course should cover:
- Classical ciphers (Vigenere Cipher, Hill Cipher ...)
- Number Theory basics and Public Key cryptosystems (RSA, Rabin, ...)
- Modern Symmetric Ciphers
- Discrete Logarithm Problem and related ciphers (ElGamal, Diffie-Hellman ...)
- Stream Ciphers
- Error Correcting Codes and Steganography
- Digital Signatures
- W. Stein and others, Sage - a mathematical software system,
- David Kohel's notes on Cryptography using Sage
- T. Brock, Linear Feedback Shift Registers and Cyclic Codes in Sage, Rose-Hulman Undergraduate Mathematics Journal, vol. 7, issue 2, 2006.
- M. Hogan, The Blum-Goldwasser cryptosystem, Hogan's thesis.
- K. Tucker-Davis, An analysis of the F5 steganographic system, Tucker-Davis' thesis.
- NY Times article on GCHQ's online crypto puzzle,
- Cryptography videos:
- Cryptography course on youtube by David Evans, Professor of Computer Science at the University of Virginia
- Diffie Hellman talk: Information Security—Before & After Public-Key Cryptography (recorded 2005)
- Short documentary, mostly on WWII ciphers: The Innovation of Cryptology: An Enigma of History (recorded date unknown)
- Steve Weis (on Google's Applied Security team) talk Theory and Practice of Cryptography (recorded 2007)