My Journey in Secure Compilation
summary
Provides a machine-checked compiler pipeline that enforces compartmentalization and limits undefined behavior to compromised compartments, implemented as SECOMP—an extension of CompCert that preserves 19 verified passes and disables only cross-compartment inlining/tail-call optimizations. Proof effort adds about 19,000 lines (a 13.6% change to CompCert) and reuses ~130,000 lines of Coq; back ends target RISC-V and a CHERI capability backend, with enforcement options including SFI, micropolicies, and capability machines, and yields full-abstraction–like secure compilation guarantees.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 0:23Security in compilation
- 1:48Source versus target execution
- 3:15Source semantics compromise
- 5:49Enforcement and proof strategies
- 6:30ComCERT extension
- 7:54CHERI hardware acceleration
- 8:59Compiler correctness proof
- 10:42Secure compilation challenges
- 12:51Backend verification
- 13:32Q&A
related talks
28mSECOMP2CHERI: Securely Compiling Compartments from CompCert C to a Capability M...
50mCompCert: a journey through the landscape of mechanized semantics for verified co...
29mA CompCert backend with symbolic encryption
28mMemory simulations, security and optimization in a verified compiler
16mMitigating Transient-Execution Attacks with CHERI Compartments
24mA CompCert Compiler that Preserves Cryptographic Constant-time
25mComposing Secure Compilers
16mReconciling Optimization With Secure Compilation
