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.
|Lectures||Mon., Wed., Fri. 10:30–11:20am, Ry 251|
We'll use Piazza for general discussion and questions about course material.
Assignments will be distributed here and be collected via Phoenixforge (instructions here).
No textbook is required, but if you would like additional references, we recommend:
Cryptography Engineering by Ferguson, Schneier, and Kohno
Security Engineering by Ross Anderson
Introduction to Modern Cryptography by Katz and Lindell
|Undergraduate (CMSC 23200)||Graduate (CMSC 33250)|