The following gives a day-by-day breakdown of topics covered, readings assigned, and assignment handouts/due dates. Each topic includes several required readings that students should read before the topic is discussed in class – always look ahead a few days to see what readings you should be doing. Some topics also have supplemental (non-required) readings that students can look into if they want to delve more deeply into that topic.
The schedule in this class is flexible, and past dates will be updated to reflect what was actually covered. Future dates are always tentative and subject to change.
Topics: Class overview and syllabus review; introduction to security: threats, vulnerabilities, and controls [Slides]
Handout: Syllabus
Reading: Textbook sections 1.1 and 1.4
Topics: Overview of computer security – basic goals and terminology – day 1 [Slides]
Optional reading on usability in security: Alma Whitten and J. D. Tygar. Why Johnny can’t encrypt: a usability evaluation of PGP 5.0. In Proceedings of the 8th USENIX Security Symposium, 1999, pp. 169–183.
Topics: Overview of computer security – basic goals and terminology – day 2
Reading: Textbook, sections 1.2, 9.1–9.2
Topics: Security (access control) models – day 1 [Slides]
Topics: Security (access control) models – day 2
Due: Assignment 1
Graduate/Honors students: Research Reading Summary 1 due
Reading: Textbook section 1.3 and supplied reading
Topics: Cryptography: Basic cryptographic threat model, key sizes, brute force attacks, and estimation techniques [Slides]
Reading: Textbook, sections 8.1–8.2
Topics: Randomization, probability theory review, entropy, and effect on brute force search (slides continued from last time)
Topics: Fundamental cryptographic protections - encryption (symmetric and public key) and hash functions [Slides]
Graduate/Honors students: Research Reading Summary 2 due
Reading: Textbook, sections 8.3–8.4
Topics: Cryptography for integrity - MACs, digital signatures, certificates (slides continued – more slides as time allows)
Due: Assignment 2
Reading: Handouts
Topics: Cryptography: Theory and Practice (models, breakdowns in practice, and programming) [Slides]
Reading: Textbook, sections 2.1–2.5
Topics: Physical security [Slides]
Reading: Textbook Sections 3.1–3.3
Topics: Operating System Security – Basics and Linux demos - day 1 [Slides]
Graduate/Honors students: Research Reading Summary 3 due
Topics: Operating System Security – Basics and Linux demos - day 2
Due: Assignment 3
Topics: Midterm Information/Review; Advanced OS Security (sandboxes, chroot, and containers) [Slides]
Midterm Exam 1
Reading: Textbook, Section 3.4
Topics: Software security and vulnerabilities, Part 1 – Day 1 [Slides]
Topics: Software security and vulnerabilities, Part 1 – Day 2 (slides continued from before)
Final Project: Overview and discussion
Topics: Software security and vulnerabilities, Part 2 – Day 1 [Slides]
Required reading:
Supplemental reading: Good information for students who want to dig deeper.
Final Project: Project topic selection due
Topics: Software security and vulnerabilities, Part 2 – Day 2 (slides continued from before)
Due: Assignment 4
Reading: Textbook, Chapter 4
Topics: Malware [Slides]
Reading: Textbook, Chapter 7 and OWASP Top 10
Topics: Web Application Security – day 1 [Slides]
Topics: Web Security – day 2 – guest lecturer!
Reading: Textbook, Chapter 5
Topics: Network Security I – day 1 [Slides]
Topics: Network Security I – day 2
Final Project: Progress report due
Reading: Textbook, Sections 6.1–6.4
Topics: Network Security II – day 1 [Slides]
Due: Assignment 5
Topics: Network Security II – day 2
Topics: Class wrap-up and review
Note that per the UNCG Fall schedule, Tuesday, November 24 will follow the “Monday schedule,” so we will have a meeting on Tuesday.
Midterm Exam 2
This class will have a final project in lieu of a final exam. The project is due at the university-scheduled final exam time, which is:
Friday, December 4, 2020, 3:30 PM
Final Project: Final report due