Introduction to Computer Security Autumn 2018

This course introduces the principles and practice of computer security. It aims to teach you how to model threats to computer systems and how to think like an attacker and a defender. It presents standard cryptographic functions and protocols and gives an overview of threats and defenses for software, host systems, networks, and the Web. It also touches on some of the legal, policy, and ethical issues surrounding computer security in areas such as privacy, surveillance, and the disclosure of security vulnerabilities. The goal of this course is to provide a foundation for further study in computer security and to help you better understand how to design, build, and use computer systems more securely. See the schedule for details.


Ben Zhao
Crerar 369 (Lab: Crerar 377)
Office hours: By appointment

Blase Ur
Crerar 363
Office hours: Mondays 2:00p-3:00p
or by appointment

David Cash
Crerar 353
Office hours: By appointment


Minhaj Khan
Crerar 391 Desk 19
Office hours: Thursdays 11:00a-12:00p
or by appointment

Xu Zhang
Crerar 381 Desk 20
Office hours: Wednesdays 1:00p-2:00p
or by appointment

Course Information

Prerequisites CMSC 15400
Lectures 10:30a–11:20a Mondays, Wednesdays, and Fridays in Ryerson 251
Communication We'll use Piazza for general discussion and questions about course material.
Assignments will be distributed on the course schedule and collected via Canvas (23200 and 33250).
Reference Books No textbook is required (or even necessarily recommended), but if you would like additional references, we suggest:
Introduction to Modern Cryptography by Katz and Lindell
Security Engineering by Ross Anderson
Cryptography Engineering by Ferguson, Schneier, and Kohno


The coursework consists of seven assignments (mostly CTF-style), a take-home midterm exam, and a closed-book final exam. In addition, students enrolled in CMSC 33250 must complete a research project in groups of 2-3 students and also submit weekly paper responses based on the assigned readings. All assignments other than the CMSC 33250 group research project must be done individually. Your course grade will be based on the following components:
Undergraduate (CMSC 23200) Graduate (CMSC 33250)
Assignments (7) 60% 35%
Midterm Exam 15% 10%
Final Exam 20% 15%
Class Participation 5% 5%
Group Research Project --- 30%
Paper Responses --- 5%

Late policy:We will accept late assignments within a small margin with a grade penalty at the discretion of the instructors. Assignments more than a day late will not be accepted without a previously-approved extension.

Academic Integrity Policies

The University of Chicago has formal policies related to academic honesty and plagiarism. We abide by these standards in this course. Depending on the severity of the offense, you risk being dismissed altogether from the course. All cases will be referred to the Dean of Students office, which may impose further penalties, including suspension and expulsion. If you have any question about whether some activity would constitute cheating, please feel free to ask. In addition, we expect all students to treat everyone else in the course with respect, following the norms of proper behavior by members of the University of Chicago community.

Student interactions are an important and useful means to master course material. We recommend that you discuss the material in this class with other students. While it is acceptable to discuss assignments in general terms, it is not acceptable to turn in someone else's writing or code (or fragments thereof) as your own. When the time comes to write down your answer, you should write it down yourself from your own understanding. Moreover, you should cite any material discussions or written sources, e.g., "Note: I discussed this exercise with Jane Smith". If one student "helps" another by giving them a copy of their assignment, only to have that other student copy it and turn it in, both students are culpable. If you have any questions about what is or is not proper academic conduct, please ask an instructor. (This description of academic honesty is derived in part from those of Stuart Kurtz and John Reppy).


If a personal emergency comes up that might impact your work in the class, please let Blase know so that the course staff can make appropriate arrangements. University environments can sometimes be very overwhelming, and all of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful. If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. The University of Chicago's counseling services are here to support you. Consider also reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

If you or someone you know is feeling suicidal or in danger of self-harm, call someone immediately, day or night:
• Student Counseling Urgent Care: (773)702-9800 or in person.
• National Suicide Prevention Lifeline: 1-800-273-8255