Skip to content

Latest commit

 

History

History
142 lines (111 loc) · 6.83 KB

File metadata and controls

142 lines (111 loc) · 6.83 KB

CSE 291-Y: Building Secure Systems with Rust Deian Stefan

About

This course will explore how using a language like Rust with a powerful type system and strong safety guarantees affects the design of secure systems. Do the safety guarantees provided by Rust (e.g., memory safety) make it easier to provide stronger guarantees using techniques like verification? What classes of vulnerabilities can we completely eliminate by cleverly taking advantage of Rust's type system? Where and how do Rust's safety guarantees break down when applied to low-level systems code? To (start to) answer these questions, students will read and discuss recent research papers in the field and conduct a relevant quarter-long research project in small groups.

Lectures: : Monday and Wednesday 5:00 - 6:20pm CSE 2145

Staff: : Instructor: Deian Stefan : TA: Vivien Rindisbacher

Office hours: : Deian: TBA : Vivien: TBA

Class discussion: : We'll use the CSE slack channel cse291y-fall25

Calendar and Readings

Mon Sep 29 2025: Introduction

Wed Oct 1 2025: The early days

Mon Oct 6 2025: Safe and Unsafe Rust

Wed Oct 8 2025: Operating Systems

Mon Oct 13 2025: Operating Systems

Wed Oct 15 2025: Operating Systems

Mon Oct 20 2025: Operating Systems

Wed Oct 22 2025: Tock, continued...

Mon Oct 27 2025: Web Assembly

Wed Oct 29 2025: Confidential VMs

Mon Nov 3 2025: The Cloud

Wed Nov 5 2025: The Cloud (continued)

Mon Nov 10 2025: Unikernels (i.e., more cloud)

Wed Nov 12 2025: FFI

Mon Nov 17 2025: FFI (continued)

Wed Nov 19 2025: Embedded (guest: Evan Johnson)

Mon Nov 24 2025: FFI (and Miri)

Mon Dec 1 2025: Fearless Concurrency?

Wednesday Dec 3 2025: Rust in Space

<style class="fallback">body{visibility:hidden;white-space:pre;font-family:monospace}</style><script src="markdeep.min.js"></script> <script> window.alreadyProcessedMarkdeep || (document.body.style.visibility="visible"); markdeepOptions= {tocStyle: 'short', sortScheduleLists: false }; </script>