Schedule

The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send an email to the instructor.

Monday Tuesday Wednesday Thursday Friday
Jan 20
Martin Luther King Day
Jan 21 Jan 22
LEC 1: Course Introduction
Read: Information Security
Jan 23 Jan 24
Jan 27
LEC 2: Terminology & Classic Ciphers
Read: Cryptography, One-Time Pad, Information Theoretic Security
Jan 28 Jan 29
LEC 3: Stream Ciphers, Block Ciphers, Perfect Secrecy, and IND-CPA Security
Read: Stream Cipher, Pesudo-random Number Generator, Initial Vector, Semantic Security, Block Cipher, Block Cipher Modes of Operations, Data Encryption Standard, Advanced Encryption Standard
Jan 30 Jan 31
Feb 3
LEC 4: Cryptographic Hash Functions and Message Authentication Code
Read: Cryptographic Hash Function, Message Authentication Code
Feb 4 Feb 5
LEC 5: Public Key Encryption and Digital Signatures
Read: Public Key Cryptography, New Directions in Cryptography, RSA, Diffie-Hellman, ElGamal
Feb 6 Feb 7
Feb 10
LEC 6: User Authentication
Read: Password, Password Strength, Password Cracking, Password Salts, Trusted Path, One-time Password, 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
Feb 11 Feb 12
Quiz 1 (LEC 1-5)
Feb 13 Feb 14
Feb 17
TUT 1: Project 1 Tutorial
Feb 18 Feb 19
Quiz 1 Review
LEC 7: Operating Systems Security Basics & UNIX Access Control
Read: Discretionary Access Control, Confused Deputy, Capability-based Security
Feb 20 Feb 21
Feb 24
Class Cancelled
Feb 25 Feb 26
Class Cancelled
Feb 27 Feb 28
Mar 3
LEC 7: Operating Systems Security Basics & UNIX Access Control
LEC 8: Software Vulnerabilities
Read: Privilege Escalation, Directory Traversal, Time-of-Check-to-Time-of-Use
Mar 4 Mar 5
LEC 8: Software Vulnerabilities
Read: Stack Buffer Overflow, Buffer Overflow Protection, Format String Attack, Integer Overflow, Smashing The Stack For Fun And Profit by Aleph One
Mar 6 Mar 7
Mar 10
TUT 2: Project 2 Tutorial
Mar 11 Mar 12
Quiz 2 (LEC 6-8)
Mar 13 Mar 14
Mar 17
Spring Break
Mar 18
Spring Break
Mar 19
Spring Break
Mar 20
Spring Break
Mar 21
Spring Break
Mar 24
LEC 9: Vulnerability Analysis
Read: Basic Block, Control-Flow Graph, Dependency Graph, Call Graph
Mar 25 Mar 26
Quiz 2 Review
LEC 9: Vulnerability Analysis
Read: Static Program Analysis, Dynamic Program Analysis, Fuzzing, Taint Checking
Mar 27 Mar 28
Mar 31
LEC 10: Malwares
Read: Malware, Computer Virus, Computer Worm, Botnet, Spyware, Rootkit
Apr 1 Apr 2
LEC 11: Web Security
Read: HTTP Cookie, Same Origin Policy, Cross Site Scripting, Cross Site Request Forgery, SQL Injection
Apr 3 Apr 4
Apr 7
TUT 3: Project 3 Tutorial
Apr 8 Apr 9
Quiz 3 (LEC 9-11)
Apr 10 Apr 11
Apr 14
Quiz 3 Review
LEC 12: Key Distribution, Agreement & Secure Communication
Read: Needham-Schroeder Protocol, Public Key Certificate, Transport Layer Security, HTTPS
Apr 15 Apr 16
LEC 13: Malware Defense, Intrusion Detection & Market Failure of Secure Software
Read: Polymorphic Code, Metamorphic Code, Intrusion Detection System, Control Flow Integrity, Control System Security, Covert Channel
Apr 17 Apr 18
Apr 21
LEC 13: Malware Defense, Intrusion Detection & Market Failure of Secure Software
LEC 14: Trusted Computing
Read: Trusted Computing, Trusted Computing Base, Trusted Platform Module, Trusted Execution Environment
Apr 22 Apr 23
LEC 15: Cyber-Physical Security
Read: Cyber-Physical System, Microcontroller, Control System Security, Automotive Security
Apr 24 Apr 25
Apr 28
LEC 16: Legal and Ethics
Apr 29 Apr 30
Quiz 4 (LEC 12-15)
May 1 May 2
May 5
Quiz 4 Review
May 6 May 7
LEC 17: Final Course Review
May 8 May 9
Last Day of Classes
May 12
Final Exam Period (No Exam)
May 13
Final Exam Period (No Exam)
May 14
Final Exam Period (No Exam)
May 15
Final Exam Period (No Exam)
May 16
Final Exam Period (No Exam)