USC shield

CSCI 699: Confidential Computing: Protecting Your Data on Cloud GPUs and CPUs

Graduate course on trusted execution environments, confidential VMs, and confidential GPUs, together with related privacy techniques such as federated learning, secure multi-party computation, and fully homomorphic encryption.

Spring 2025 · Thursday 4:00-7:20pm · Social Sciences Building

Overview

Units
4.0
Term—Day—Time
Spring 2025, Thursday 4:00-7:20pm
Location
Social Sciences Building
Instructor
Mengyuan Li
Office
GCS 502A
Office Hours
Wednesday 11am-12 pm, GCS, B2 floor-SB4
Contact Info
mli49061@usc.edu (Please include “CSCI 699” in your email subject.)
Teaching Assistant
TBD
Slides & Materials
Shared via the Google Drive folder

Description

This course offers an in-depth study of confidential computing and privacy-preserving computational techniques, focusing on protecting data in cloud environments using both CPUs and GPUs. Students will explore the design and implementation of Trusted Execution Environments (TEEs) and examine various cloud services that support confidential computing, including secure enclaves, Confidential Virtual Machines (CVMs), and confidential GPUs.

Objectives

  • A comprehensive understanding of confidential computing and TEE.
  • Gain experience in reading, analyzing, and critically evaluating research papers.
  • Understand and experiment with state-of-the-art systems related to TEEs and CVMs.
  • A better understanding of other common privacy-preserving computation techniques such as FL, MPC, and FHE.
  • Improve academic writing and presentation skills through assignments and the final project.

Grading

Assessment Tool% of Grade
Assignment 115%
Assignment 215%
Course Presentation20%
Final Project40%
Participation and Discussion10%

Schedule

Scroll the table sideways for readings and deliverables.

WeekDateTopics/Daily ActivitiesReadings/PreparationDeliverables
1Jan 16Introduction to Confidential ComputingCourse syllabus, Introductory articles on cloud security-
2Jan 23Trusted Execution EnvironmentsRelevant research papers about SGX, AMD SEV, and Nvidia CC-
3Jan 30Confidential Virtual MachinesArticles on CVMs and cloud implementations-
4Feb 6Programming with VirtualizationTutorial on VMs and QEMU (related website: QEMU and KVM)Assignment 1.1 Assigned
5Feb 13Confidential Computing and Practical TEE Systems; Assignment 1.2 Demo2-3 relevant research papersAssignment 1.1 Check-in/ Assignment 1.2 Assigned
6Feb 20Hardware Attacks and Defenses - Side-Channel Attacks; Project Introduction2-3 relevant research papers-
7Feb 27Hardware Attacks and Defenses - Meltdown and Spectre Vulnerabilities2-3 relevant research papersAssignment 1 Due/Assignment 2.1 Assigned
8Mar 6Confidential GPUs2-3 relevant research papers about GPU vulnerabilitiesAssignment 2.1 Due/Assignment 2.2 Assigned
9Mar 13Introduction to Privacy-Preserving Techniques/Symposium on the Future of Computing--
10Mar 20Spring Recess--
11Mar 27Secure Software Development Practices/ Project Midterm Presentation2-3 relevant research papers about TEE side-channel AttacksProject Midterm Report Due/Assignment 2.2 Due
12Apr 3Balancing Security and Performance in Confidential Computing – CPU scenario2-3 relevant research papers about TEE-based system optimization-
13Apr 10Balancing Security and Performance in Confidential Computing – GPU scenario2-3 relevant research papers about GPU-TEE-based Systems-
14Apr 17Lectures; Final Project Presentations-In-class presentations
15Apr 24Final Project Presentations-In-class presentations
16May 1Final Project Presentations-Project Final Report Due

Policies

Academic Integrity

This course follows the expectations for academic integrity as stated in the USC Student Handbook. Violations will result in disciplinary action.

Support Systems

For counseling, mental health, and other support services, visit USC Support Systems.