Cerisier: A Program Logic for Attestation in a Capability Machine
summary
Cerisier presents a program logic that formalizes CHERI-TrEE support for enclaves on a capability machine and claims modular, end-to-end proofs for systems mixing trusted, untrusted and attested code. The development is fully mechanized: ~35,000 lines in Iris and the Rocq Prover, with reusable artifacts available. Key technical pieces are a universal contract for untrusted code based on a logical relation, memory-revocation reasoning, symbolic signing predicates, and case studies proving security for secure outsourced computation, mutual attestation, and trusted sensor using Iris+Rocq.
AI-written summary · about
chapters (9)
- 0:00Cerisier and attestation intro
- 1:04Secure computation outsourcing problem
- 3:54Attestation example breakdown
- 5:40Verifying enclaves challenges
- 7:45Cherry Tree sealing and sweep
- 9:54Enclave maps attestation reasoning
- 11:39End-to-end proof example
- 12:20Complex case studies
- 13:03Conclusion and Iris verification
related talks
17mProving capability safety in the presence of indirect sentries
23mMorello-Cerise: A Proof of Strong Encapsulation for the Arm Morello Capability Hardware(…)
27mA CHERI C Memory Model for Verified Temporal Safety
24mSecure Calling Conventions for CHERI Capability Machines in Practice (Work in Pr...
24mSecure Calling Conventions for CHERI Capability Machines in Practice (Work in P...
27mLe Temps des Cerises: Efficient Temporal Stack Safety on Capability Machines using Directed
28mSECOMP2CHERI: Securely Compiling Compartments from CompCert C to a Capability M...
26mCryptis: Cryptographic Reasoning in Separation Logic
