Introduction to Computer Security Fall 2016

This course teaches the security mindset and introduces the principles and practices of computer security as applied to software, host systems, and networks. It covers the foundations of building, using, and managing secure systems. Topics include standard cryptographic functions and protocols, threats and defenses for real-world systems, incident response, and computer forensics. See the schedule for details.

Professors Michael Bailey
Office hours: Fri 11:00–12:00 (458 CSL) or by appointment
Ryan Matthew Cunningham
Office hours: Wed 13:00–14:00 (2211 Siebel) or by appointment
Prerequisites Credit in CS 241 or ECE 391
Lectures Wed./Fri. 15:30–16:45, 1404 Siebel Center for Comp Sci
Discussion Sections Thu. 11:00–11:50, 1111 Siebel Center for Comp Sci
Thu. 12:00–12:50, 1111 Siebel Center for Comp Sci
Thu. 13:00–13:50, 1111 Siebel Center for Comp Sci
Thu. 14:00–14:50, 1105 Siebel Center for Comp Sci
Thu. 15:00–15:50, 1105 Siebel Center for Comp Sci
Thu. 16:00–16:50, 1105 Siebel Center for Comp Sci
TAs Atul Nambudiri, TA
Gene Shiue, TA
Seoung Kim, TA
Siddharth Murali, TA
Office hours: Tue., Wed., Thu., Fri., 17:00–19:00, ECEB 5034
Communication We'll use Piazza for general discussion and questions about course material.
For administrative issues, email to contact the course staff.
This is a paperless course. Assignments will be distributed here and you will submit them through SVN here. Grades will be managed through Compass 2g here. Lecture videos are availiable here. Lecture slides and optional reading materials are here.
Reference Books No textbook is required, but if you would like additional references, we recommend:
Security Engineering by Ross Anderson
Cryptography Engineering by Ferguson, Schneier, and Kohno
Introduction to Computer Security by Matt Bishop
Computer Security: Principles and Practice by William Stallings
Computer Security: Art and Science by Matt Bishop
Security in Computing by Charles P. Pfleeger
Introduction to Computer Security by Michael Goodrich and Roberto Tamassia
Resources Security Research at Illinois
Security Course Roadmap


We'll calculate your course grade based on these components:
Programming Projects 60% Five programming projects, completed in teams of two
Midterm Exam 20% One exam covering material in the first half of class
Final Exam 20% One exam covering all material from the course

Ethics, Law, and University Policies Warning

To defend a system you need to be able to think like an attacker, and that includes understanding techniques that can be used to compromise security. However, using those techniques in the real world may violate the law or the university’s rules, and it may be unethical. Under some circumstances, even probing for weaknesses may result in severe penalties, up to and including expulsion, civil fines, and jail time. Our policy in ECE 422, CS 461 is that you must respect the privacy and property rights of others at all times, or else you will fail the course.

Acting lawfully and ethically is your responsibility. Carefully read the Computer Fraud and Abuse Act (CFAA), a federal statute that broadly criminalizes computer intrusion. This is one of several laws that govern “hacking.” Understand what the law prohibits — you don’t want to end up like this guy. If in doubt, we can refer you to an attorney.

Please review the Campus Administrative Manual (especially Policy on Appropriate Use of Computers and Network Systems at the University of Illinois at Urbana-Champaign) for guidelines concerning proper use of information technology at Illinois, as well as the Student Code (especially 1-302 Rules of Conduct, 1‑402 Academic Integrity Infractions). As members of the university, you are required to abide by these policies.