Cryptology, Spring 2009


The final is Monday, May 18, 8-10 AM in Math B0429

Review, practice exam and solutions for test II, Friday May 8. Also here are solutions to test I, and solutions to practice exam I

Here is a review for the final, practice final exam and solutions

There will be a review session Friday 10:15, in the usual classroom, B0429.

Title: Cryptology
Instructor: Professor Jeffrey Adams
Time: MWF 9-10
Location:B0429
Office Hours: Monday 11-12, Wednesday 1-2
Book: Introduction to Cryptography, Second Edition, by W. Trappe and L. Washington
Office: Math 2310
Phone: (301) 405-5493
Prerequsites:Any two 400-level MATH courses; or CMSC 330 and CMSC 251.

Course Description:

Cryptology is the study of the design and analysis of various encryption schemes, and related topics. The plan is to study the basics of the subject and then touch on several recent developments.

Grading:
Midterms200
Homework100
Final150
Total450

Homework: Homework will be assigned regularly. It is due by the beginning of class on the due date. Late homework is accepted but the score will be reduced by 20% each day it is late.

Parts of each assignment use Mathematica, Matlab or Maple. Programs used in the homework may be found on Larry Washington's book page, including programs in Mathematica, Maple, and Matlab.

Mathematica, Maple and Matlab are available in university computer labs and are inexpensive to get for home use.

The two lowest homework grades are dropped.

Homework Assignments

Approximate syllabus: (subject to adjustment):

  1. Construction and analysis of simple cryptosystems (affine, substitution, Vigenere, linear feedback shift registers)
  2. Public key cryptography (RSA, finding large primes, factoring techniques, ElGamal systems)
  3. The Data Encryption Standard (how international money is protected and why it might not be safe)
  4. Signature schemes (how to sign an electronic message)
  5. Key distribution
  6. Identification schemes (identify yourself in a way that eavesdroppers cannot later pretend to be you)
  7. Secret sharing schemes (design a system that can be activated by any 5 people in a group, but never by 4)
  8. Zero-knowledge proofs (prove that you have some information without revealing the information)
  9. Elliptic Curve Cryptography
  10. Miscellany (flipping coins and playing poker over the telephone while preventing cheating)

My home page | Teaching