Computer Science 349
Cryptography
Spring 2004


Welcome to CS349
This seminar investigates the art and science of secret writing and its application to computer and network security. The course begins with an introduction to classical symmetric-key cryptosystems, steganography, and modern block ciphers as well as the mathematical analyses required to make and break them. We focus next on public-key cryptography is its application to data and network security. Issues include: key management, message authentication and hash functions, nonrepudiation, data integrity and confidentiality. Applications such as Kerberos, X.509 authentication service, PGP, S/Mime, secure sockets layer, and IP security are examined. The class closes with a discussion of alternative cryptosystems and current research. Course requirements will be discussed on the first day. A course syllabus containing a list of handouts, assignments and assigned readings may be found at this location. This document will be updated throughout the semester.
Prerequisite: 231 or permission of the instructor
Distribution: Mathematical modeling
Semester: Spring, Unit: 1.0

Textbook
The text this semester is a survey of cryptograph by Simon Singh entitled The Code Book: The Science of Secrecy from Ancient Egypt to Quantum. Highly recommended is Douglas R. Stinson’s introductory text Cryptography: Theory and Practice. Both text are in the bookstore and on reserve in the library. Additional materials will be placed on reserve in the Science Center Library.

Course Materials
CS349 course materials for each class will be handed out at the beginning of each lecture. Copies are available in .pdf format using the links on this page and require the Adobe Acrobat Reader program for on-screen viewing and printing. This program is installed on most public computers at Wellesley College. If your computer does not have a working copy of Acrobat Reader, it is available for free from Adobe on all major computer platforms. Click on the button to the left to download Acrobat Reader. Note that there are plug-ins that allow you to read .pdf files directly from your browser; again, these are installed on most public computers and are freely available from Adobe.

Course Conference
The course conference, CS349_Spr04, will contain announcements and changes to the schedule. Please check this conference before each class and especially before an assign is due. In addition, the conference will contain a section for CS349 students ask and answer questions among themselves concerning course material and assignments. You may discuss the homework in general terms, suggest where to go in the text or lecture notes to help someone get started, or you may help clarify an ambiguous question. However, please do not post your solutions either complete or partial. I will check the conference regularly to help with any unanswered questions.

Transparencies
Copies of course transparencies will be available at the beginning of each lecture. Copies may be obtained using the following links.

  1. What me worry?
    Thursday, January 26
  2. Decrypted Secrets
    Monday, February 2
  3. Affine ciphers (no additional handouts)
    Thursday, February 5
  4. Cracking the Enigma
    Monday, February 9
  5. The strange affair of G.W. Kulp
    Thursday, February 12
  6. President's day (no class)
    Monday, February 16
  7. Probability and Shannon's theory
    Thursday, February 19
  8. Perfect secrecy (no additional handouts)
    Friday, Februrary 20
  9. Entropy
    Monday, February 23
  10. Conditional entropy
    Thursday, February 26
  11. Spurious keys
    Monday, March 1
  12. Unicity distance (no additional handouts)
    Thursday, March 4
  13. Hiding in plain sight: An intro to steganography
    Monday, March 8
  14. Midterm examination 1
    Thursday, March 11
  15. Steganographic techniques
    Monday, March 15
  16. DES and AES
    Thursday, March 18
  17. Spring break
    March 22 -- March 26
  18. Block ciphers
    Monday, March 29
  19. Linear and differential cryptanalysis (no additional handouts)
    Thursday, April 1
  20. Document integrity: Hash functions
    Monday, April 5
  21. Iterated hash functions
    Thursday, April 8
  22. Unconditionally secure MACs
    Monday, April 12
  23. Big MAC attacks (No additional handouts)
    Thursday, April 15
  24. Patriots Day -- No class
    Monday, April 19
  25. Midterm examination 2
    Thursday, April 22
  26. Public key cryptography
    Monday, April 26
  27. Security handshake pitfalls
    Thursday, April 29
  28. Putting it all together
    Monday, May 3
  29. PGP in practice -- No additional handouts
    Thursday, May 6

Homework Sets
All assignments are due at the beginning of class on the due dates announced when distributed and given below. Once graded homework is returned and solutions posted (usually on the class following the day the assignment was due) no late work for that assignment will be accepted. Copies of assignments may be obtained using the following links.

  1. Assignment 1 due Thursday, February 5
  2. Assignment 2 due Thursday, February 12
    (mock_passwd)
  3. Assignment 3 due Thursday, February 19
  4. Assignment 4 due Thursday, February 26
  5. Assignment 5 due Thursday, March 4
  6. Assignment 6 due Thursday, March 29
  7. Assignment 7 due Thursday, April 8
  8. Assignment 8 due Thursday, April 15
  9. Assignment 9 due Thursday, May 6

Randy Shull -- rshull@wellesley.edu
Computer Science 349, Spring 2004
Last Modified April 20
, 2004
Page Expires December 31, 2004