Syllabus
Education Objectives
15-799 is a graduate-level course that is broadly focused on full-stack system security and will cover the foundations of building secure systems.
During the course, we will cover hardware, system software, and cryptographic primitives for building secure systems, both within the datacenter environment and in the decentralized setting.
Upon successful completion of the course, students should be able to:
- Understand the state-of-the-art secure hardware architectures and software systems that power modern datacenters and the internet.
- Have a solid grasp on modern cryptographic techniques, and understand how to leverage them for building practical systems with strong security guarantees and functionalities.
- Identify the security implications of shared hardware resources and develop an understanding of existing attack vectors, defense mechanisms, and their limitations.
- Develop and evaluate secure hardware and software systems with a focus on robust experimental methodology and cross-layer explanation of design decisions.
These set of skills will be helpful in your research when targeting top tier venues in computer architecture and systems or in industry when building the next state-of-the art systems. The course will also help early and senior PhD students in building a solid understanding of fruitful research opportunities and directions.
Prerequisites
- The course is appropriate for doctoral students in systems and/or security areas.
- Master and undergraduate students may be admitted with permission from the instructor.
Tools and Text
We will mostly use C/C++ and computer architecture simulators, some projects might require Python, Rust, or Go. There will be not text, but some course notes and papers may be distributed.
Grading
- Lab Assignments: 15%
- Seminar: 35%
- Paper reviews (2 per week), 20%
- Presentation lead, 10%
- Paper reviews (2 per week), 5%
- Exam: 10%
- Final research project: 40%
- Proposal: 5%
- Checkpoint: 5%
- Final presentation: 15%
- Final report: 15%
If your project gets accepted to a top tier conference you automatically get an A!
Reading Assignments and Reviews
Each week has two assigned readings. Each student is expected to read both assignments. Each student is required to submit a one paragraph review for both readings as indicated in the schedule on HotCRP. Each review must include the following information:
- A summary of the main idea of the paper (Three sentences)
- Opportunities and challenges (Three sentences)
- Limitations (Two sentences)
- Potential Future Work (Two sentences)
- Three questions for discussion
Academic Integrity and Collaboration
- Discussion of research papers and ideas among students is strongly encouraged.
- Paper reviews must be done individually and on your own writing. Plagiarism will not be tolerated.
- Lab assignments will be conducted in teams of two students. Discussion among teams is allowed. Students may use any online code and material with clear citations. Each team must provide a report of their own writing and code.
- The final research project will be conducted in teams of two or three students. Discussion among teams is encouraged. Each team must provide their own proposal, presentations, code, and report.
- See CMU's Academic Integrity Policy for additional information.
Student Wellness
As a student, you may face a range of challenges that may affect your academic performance and daily life. CMU offers
Counseling and Psychological Services (CaPS) to all students. CaPS is confidential and treatment does work. Support is always available, get in touch at 412-268-2922. Additional resources can be found
here.