Course Components
Each week, you will be responsible for reviewing one of the required readings (if there are any). Reviews are typically due Tuesday at midnight via the course HotCRP site (linked from Canvas) so discussion leads have time to read them before the Thursday class.
Except where otherwise noted, discussions will be led by one or two students. Everyone should read the required readings, but discussion leads should also read all of the on-time reviews (i.e., you are not responsible for reading anything submitted at the last minute) to be prepared to lead a discussion.
There will also be opportunities to participate during lectures, so be sure to attend class!
The final project will be an opportunity to explore additional topics in formal methods and/or usable security or propose your own research project in usable formal methods. More details will be posted soon.
Schedule
This a tentative course schedule. It may change over the course of the semester, so be sure to check back here before starting on any assigned readings. Some of the materials for this course have been borrowed and/or adapted from content developed by Professors Lorrie Cranor, Limin Jia, and Hanan Hibshi at Carnegie Mellon University.
This a tentative course schedule. It may change over the course of the semester, so be sure to check back here before starting on any assigned readings.
Unit 0: Course Intro
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 1 8/26 |
Lecture Course Overview: Syllabus, classroom expectations, course motivation |
Required Readings:
No reviews due this week |
|
8/28 |
Discussion How to write a review and lead a discussion |
Discussion lead: McKenna Bid on papers on HotCRP by midnight 8/29 (you’ll receive an invitation by email) |
Unit 1: Security and Privacy
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 2 9/2 |
Lecture Threats and Attackers: Threat modeling, STRIDE, hacking humans |
Required Readings:
Review due 9/2 at midnight |
|
9/4 |
Discussion Required readings, reviews |
Discussion lead: Student(s) |
|
Week 3 9/9 |
Lecture Security and Privacy Goals and Metrics: Information security properties, usable security metrics, side & covert channels |
Required readings:
Optional readings:
Review due 9/9 at midnight |
|
9/11 |
Discussion Required readings, reviews |
Discussion lead: Student(s) |
|
Week 4 9/16 |
Lecture Introduction to Cryptography and Security Protocols: Terminology, symmetric and public key algorithms |
Optional readings:
No reviews due this week |
|
9/18 |
Lecture Introduction to Buffer Overflows: Vulnerabilities and mitigations Course Project overview |
Unit 2: Formal Methods
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 5 9/23 |
Lecture Introduction to Formal Methods: Static and dynamic analysis |
Optional readings:
No reviews due this week |
|
9/25 |
Lecture Model Checking: Finite state machines, safety and liveness properties |
Project proposals due 9/25 at midnight |
|
Week 6 9/30 |
Lecture Type Systems and Program Semantics: Noninterference, information flow control |
Required readings:
Optional readings:
Review due 9/30 at midnight |
|
10/2 |
Discussion Required readings, reviews |
Discussion lead: Student(s) |
Unit 3: Usable Security
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 7 10/7 |
Lecture Introduction to Usable Security: What is “usable”?, parts of a usable security study |
Required Readings:
Optional reading:
Review due 10/7 at midnight |
|
10/9 |
Discussion Required readings, reviews |
Discussion lead: Student(s) |
|
Week 8 10/14 |
Lecture Surveys and Interviews: Pros, cons, and development |
Required readings:
Optional readings:
Reviews due 10/14 at midnight |
|
10/16 |
Discussion Required readings, reviews |
Discussion lead(s): Students |
|
Week 9 10/21 |
Lecture Quantitative & Qualitative Analysis: Goals, null hypotheses, how to choose a statistic |
Required readings:
Optional readings:
Review due 10/21 at midnight |
|
10/23 |
Discussion Required readings, reviews |
Discussion lead(s): Students |
Unit 4: Usability in Formal Methods
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 10 10/28 |
Lecture Smart Homes |
Required readings:
Optional readings:
Review due 10/28 at midnight |
|
10/30 |
Discussion Required readings, reviews |
Discussion lead: Student(s) Project check-in 1 due 10/30 at midnight |
|
Week 11 11/4 |
Lecture Information Flows on the Web |
Required readings:
Review due 11/4 at midnight |
|
11/6 |
Discussion Required readings, reviews |
Discussion lead: Student(s) |
Unit 5: Research Ethics and Limitations
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 12 11/11 |
Guest Lecture Lorrie Cranor |
|
|
11/13 |
McKenna traveling No class |
|
|
Week 13 11/18 |
Lecture What is (Ethical) Human Subjects Research?: IRBs, research ethics |
Required readings:
Optional readings:
Review due 11/18 at midnight |
|
11/20 |
Discussion Research ethics, required readings, reviews |
Discussion lead: McKenna Project check-in 2 due 11/21 at midnight |
|
Week 14 11/25 |
Fall recess No class |
|
|
Week 15 12/2 |
Lecture Limitations of Formal Methods and Usable Security: Revisiting attacker models and side channels, assumptions, and generalizability |
Required readings:
Review due 12/2 at midnight |
|
12/4 |
Discussion Required readings, reviews |
Discussion lead: McKenna |
Final Projects and Reports
|
Date |
Topic |
Assignment |
|---|---|---|
|
Week 16 12/9-12/11 |
Final project presentations |
Final reports due 12/12 at midnight |