This schedule may change as the course progresses.

Monday Tuesday Wednesday Thursday Friday
Jan 18
Martin Luther King Day
Jan 19 Jan 20 Jan 21 Jan 22: Course Introduction
LEC 1: Overview of the Course (Video, Slides)
Readings: Information Security (Wikipedia)
Jan 25 Jan 26 Jan 27 Jan 28 Jan 29: Cryptography
LEC 2: Terminology & Classic Ciphers (Video, Slides)
LEC 3: Stream Ciphers, Block Ciphers, Perfect Secrecy, and IND-CPA Security (Video, Slides)
Readings: Cryptography, One-Time Pad, Information Theoretic Security, Stream Cipher, Pesudo-random Number Generator, Pesudo-random Number Generator, Semantic Security, Block Cipher, Block Cipher Modes of Operation, Data Encryption Standard, Advanced Encryption Standard
Feb 1 Feb 2 Feb 3 Feb 4 Feb 5: Cryptography
LEC 4: Cryptographic Hash Functions and Message Authentication Code (Video, Slides)
LEC 5: Public Key Encryption and Digital Signatures (Video, Slides)
Readings: Cryptographic Hash Function, Message Authentication Code, Public Key Cryptography, RSA, Diffie-Hellman, ElGamal, New Directions in Cryptography
Feb 8 Feb 9
Breakout Session
DUE: Quiz 1 (11:59pm CST)
Feb 10 Feb 11 Feb 12: Security Basics
LEC 6: User Authentication (Video, Slides)
Readings: Password, Password Strength, Password Cracking, Password Salts, Trusted Path, One-time Password
Feb 15 Feb 16
Breakout Session Cancelled (Weather Closing)
Feb 17 Feb 18 Feb 19
Class Cancelled (Weather Closing)
Feb 22 Feb 23
Breakout Session
Feb 24 Feb 25 Feb 26: Security Basics
LEC 7: Operating Systems Security Basics & UNIX Access Control (Video, Slides)
Readings: Section IA of The Protection of Information in Computer Systems, CPU Modes, System Call, File-system Permissions, UNIX File and Directory Permissions and Modes, Unix File Permissions
DUE: Homework 1 (11:59pm CST)
Mar 1 Mar 2
Breakout Session
Mar 3 Mar 4 Mar 5: Software Security I
LEC 8: Software Vulnerabilities (Video, Slides)
Readings: Privilege Escalation, Directory Traversal, Time-of-Check-to-Time-of-Use, Stack Buffer Overflow, Buffer Overflow Protection, Format String Attack, Integer Overflow, Smashing The Stack For Fun And Profit by Aleph One
Mar 8 Mar 9
Breakout Session
DUE: Quiz 2 (11:59pm CST)
Mar 10 Mar 11 Mar 12: Malware
LEC 9: Malwares (Video, Slides)
Readings: Malware, Computer Virus, Computer Worm, Botnet, Spyware, Rootkit
Tutorial: Project 1 (Video, Slides)
DUE: Homework 2 (11:59pm CST)
Mar 15
Spring Break
Mar 16
Spring Break
Mar 17
Spring Break
Mar 18
Spring Break
Mar 19
Spring Break
Mar 22 Mar 23
Breakout Session
Mar 24 Mar 25 Mar 26
Mid-term Exam (72 hrs from 0am CST)
Mar 29 Mar 30
Breakout Session
Mar 31 Apr 1 Apr 2: Software Security II
LEC 10: Software Security Analysis (Video, Slides)
Readings: Basic Block, Control-Flow Graph, Dependency Graph, Call Graph, Static Program Analysis, Dynamic Program Analysis, Fuzzing, Taint Checking
Tutorial: Project 2 (Video, Slides)
DUE: Project 1 (11:59pm CST)
Apr 5 Apr 6
Breakout Session
Apr 7 Apr 8 Apr 9: Web Security
LEC 11: Web Security (Video, Slides)
Readings: HTTP Cookie, Same Origin Policy, Cross Site Scripting, Cross Site Request Forgery, SQL Injection
Apr 12 Apr 13
Breakout Session
Apr 14 Apr 15 Apr 16
Lecture Cancelled
Tutorial: Project 3 (Video, Slides, PHP)
DUE: Project 2 (extended to Apr 18 11:59pm CST)
Apr 19 Apr 20
Breakout Session
Apr 21 Apr 22 Apr 23: Secure Communication, Malware Defense & Secure Software
LEC 12: Key Distribution & Agreement, Secure Communication (Video, Slides)
LEC 13: Malware Defense, Intrusion Detection & Market Failure of Secure Software (Video, Slides)
Readings: Needham-Schroeder Protocol, Public Key Certificate, Transport Layer Security, HTTPS
Apr 26 Apr 27
Breakout Session
Apr 28
DUE: Quiz 3 (11:59pm CST)
Apr 29 Apr 30: Access Control Models and Data Privacy
LEC 14: Access Control Models (Video, Slides)
LEC 15: Data Privacy (Video, Slides)
Readings: Discretionary Access Control, Confused Deputy, Bell-LaPadula Model, Looking Back at the Bell-La Padula Model, Non-interference, Security Policies and Security Models, Biba Model, Security Models and Information Flow, k-anonymity, l-diversity, t-closeness
May 3
DUE: Project 3 (11:59pm CST)
May 4
Breakout Session
May 5
DUE: Quiz 4 (11:59pm CST)
May 6 May 7: Trusted Computing
LEC 16: Trusted Computing (Video, Slides)
Readings: Trusted Computing Base, Trusted Computing, Microkernel, Hypervisor, Trusted Platform Module, Trusted Execution Environment, Intel SGX Explained, ARM TrustZone Explained
May 10 May 11-12
Final Exam (48 hrs from May 11 0am CST)
May 13 May 14
DUE: Homework 3 (optional, 11:59pm CST)