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/4 Introduction and logistics
Monday 9/9 Part 1 overview: security failures in action
Wednesday 9/11Low-level vulnerabilities
Monday 9/16Low-level attack techniques
Wednesday 9/18Low-level defenses and counter-attacks 1Project pre-proposal
Friday 9/20HA1 attack 1
Monday 9/23Low-level defenses and counter-attacks 2
Wednesday 9/25Defensive programming and design 1Exercise set 1
Friday 9/27HA1 attack 2
Monday 9/30Defensive programming and design 2
Wednesday 10/2 Access control basics
Friday 10/4 HA1 attack 3
Monday 10/7 Information flow and mandatory access control
Wednesday 10/9 Side and covert channelsProject progress report #1
Friday 10/11HA1 attack 4
Monday 10/14Protection, isolation, and assurance
Wednesday 10/16Part 2 overview: protocols and attacksExercise set 2
Friday 10/18HA1 attack 5
Monday 10/21In-class midterm exam
Wednesday 10/23Symmetric cryptography
Monday 10/28Public-key cryptography
Wednesday 10/30"S" protocols for the Internet
Monday 11/4 Web security: server side
Wednesday 11/6 Web security: client sideExercise set 3
Monday 11/11Crypto and protocol failures
Wednesday 11/13Security middleboxesProject progress report #2
Monday 11/18Malware and network DoS
Wednesday 11/20Privacy-enhancing network overlaysExercise set 4
Friday 11/22Hands-on assignment 2
Monday 11/25Usability of security
Wednesday 11/27Electronic cash and blockchainsProject progress report #3
Monday 12/2 Electronic voting
Wednesday 12/4 Project presentations 1Exercise set 5
Friday 12/6 Exercise set 5
Monday 12/9 Project presentations 2
Wednesday 12/11Project presentations 3Project final report
Saturday 12/14Final exam 10:30am-12:30pm

Detailed reading and lecture schedule