University of Minnesota
Introduction to Computer Security

Course schedule overview

The scheduling and selection of lecture topics is subject to minor adjustment as the semester progresses, but the assignment and exam dates are not expected to change.

DateLecture topicAssignments due
Wednesday 9/8 Introduction and logistics
Monday 9/13Part 1 overview: security failures in action
Wednesday 9/15Low-level vulnerabilities
Monday 9/20Low-level attack techniques
Wednesday 9/22Low-level defenses and counter-attacks 1Project pre-proposal
Monday 9/27Low-level defenses and counter-attacks 2
Wednesday 9/29Defensive programming and design 1Exercise set 1
Monday 10/4 Defensive programming and design 2
Wednesday 10/6 Access control basics
Monday 10/11Information flow and mandatory access control
Wednesday 10/13Side and covert channelsProject progress report #1
Monday 10/18Protection, isolation, and assurance
Wednesday 10/20Part 2 overview: protocols and attacksExercise set 2
Monday 10/25In-class midterm exam
Wednesday 10/27Symmetric cryptography
Monday 11/1 Public-key cryptography
Wednesday 11/3 "S" protocols for the Internet
Monday 11/8 Web security: server side
Wednesday 11/10Web security: client sideProject progress report #2
Monday 11/15Crypto and protocol failures
Wednesday 11/17Security middleboxes
Monday 11/22Malware and network DoS
Wednesday 11/24Privacy-enhancing techniquesExercise set 3
Monday 11/29Usability of security
Wednesday 12/1 Electronic cash and blockchainsProject progress report #3
Monday 12/6 Electronic voting
Wednesday 12/8 Project presentations 1Exercise set 4
Monday 12/13Project presentations 2Hands-on assignment
Wednesday 12/15Project presentations 3Project final report
Saturday 12/18Final exam 1:30-3:30pm, 3-230 Keller

Detailed reading and lecture schedule