Description
This course is an introduction to the basic theory and
practice of cryptographic techniques used in computer
security. We will cover topics such as encryption
(secret-key and public-key), digital signatures, secure
authentication, electronic commerce (anonymous cash,
micropayments), key management, cryptographic hashing,
and a bit of zero-knowledge protocols.
Prerequisites
The course requires a basic understanding of
probability theory. Some knowledge of modular arithmetic
will be helpful but not required. The course is intended
for advanced undergraduates and graduate students.
Textbook Information
We will be using two books:
- Cryptography Theory and Practice by D.
Stinson.
- Network Security by C. Kaufman, R. Perlman
and M. Speciner.
- Optional: Applied cryptography by B.
Schneier.
and research papers handed out in class.
Homework Assignments
- There will be four written
homework assignments and one
programming project.
- You may collaborate when solving the written
assignments, however when writing up the
solutions you must do so on your own. The
programming project can be done in pairs.
- You must hand in all four homework assignments
and the programming project.
- Some of the assignments will contain extra credit
questions. You must solve extra credit questions
on your own.
- Homework assignments will be graded on a scale of
0 to 10.
- Assignments should be handed in on the due date.
Exams
There will be a final exam. No midterm exam.
Grading
Final placement in the class will be determined by the
follwing forumla:
0.5 H +
0.2 P + 0.3 F
- H is your average score on the four
written homework assignments.
- P is you grade on the programming
project.
- F is your final exam score.
|