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), message
integrity, digital signatures, user authentication, key management,
cryptographic hashing, Network security protocols (SSL, IPsec),
public-key infrastructure, digital rights management, and a bit of
zero-knowledge protocols.
Prerequisites:
The course is self contained, however a basic understanding of
probability theory and modular arithmetic will be helpful. The course
is intended for advanced undergraduates and masters students.
Students are expected to have experience with basic proof techniques
and some programming experience.
Textbook Information
Students can supplement the lectures with an online version of the course (MOOC) that covers some of the material.
The following books can be used to supplement the lectures:
Note that the textbooks do not cover all the material discussed in class.
Sections
There will be a number of sections given by the TAs during the quarter.
Attendance at the sections is recommended but optional.
Homework Assignments
- There will be four written
homework assignments and two programming projects.
- You may collaborate when solving the written
assignments, however when writing up the
solutions you must do so on your own.
- Both programming projects can be done in pairs.
- You must turn in all four homework assignments
and both programming projects.
- Some of the assignments will contain extra credit
questions. You must solve extra credit questions
on your own.
- Submission:
Homework and projects are due on the due date by 11:59pm.
All homework and project submissions are done through Gradescope.
- Extensions: each student has a total of 72
extension hours throughout the quarter.
This automatic extension can be spent in units of 24 hours on any
of the assignments and projects. Please mark the submission
time for any late assignment. There will be no additional
extensions.
- It is an honor code violation to consult solutions to
homework problems from previous CS255's.
Exams
The final exam will take place during finals week. No
midterm exam.
Grading
Final placement in the class will be determined by the
following formula:
0.35 H + 0.35 P + 0.3 F
where:
- H is your average score on the four
written homework assignments.
- P is the weighted average grade on the two programming
projects.
- F is your final exam score.
Students with Documented Disabilities
Students who may need an academic accommodation based on the impact of
a disability must initiate the request with the Student Disability
Resource Center (SDRC) located within the Office of Accessible
Education (OAE). SDRC staff will evaluate the request with required
documentation, recommend reasonable accommodations, and prepare an
Accommodation Letter for faculty dated in the current quarter in which
the request is being made. Students should contact the SDRC as soon as
possible since timely notice is needed to coordinate
accommodations. The OAE is located at 563 Salvatierra Walk (phone:
723-1066).