Ruhr-Uni-Bochum

FSLH: Flexible Mechanized Speculative Load Hardening

2025

Conference / Journal

Authors

Cătălin Hrițcu Sebastian Harwig Léon Ducruet Roberto Blanco Jonathan Baumann

Research Hub

Research Hub A: Kryptographie der Zukunft
Research Hub B: Eingebettete Sicherheit
Research Hub C: Sichere Systeme

Research Challenges

RC 5: Physical-Layer Security
RC 7: Building Secure Systems
RC 8: Security with Untrusted Components

Abstract

The Spectre speculative side-channel attacks pose formidable threats for security. Research has shown that code following the cryptographic constant-time discipline can be efficiently protected against Spectre v1 using a selective variant of Speculative Load Hardening (SLH). SLH was, however, not strong enough for protecting non-cryptographic code, leading to the introduction of Ultimate SLH, which provides protection for arbitrary programs, but has too large overhead for general use, since it conservatively assumes that all data is secret. In this paper we introduce a flexible SLH notion that achieves the best of both worlds by generalizing both Selective and Ultimate SLH. We give a suitable security definition for such transformations protecting arbitrary programs: any transformed program running with speculation should not leak more than what the source program leaks sequentially. We formally prove using the Rocq prover that two flexible SLH variants enforce this relative security guarantee. As easy corollaries we also obtain that, in our setting, Ultimate SLH enforces our relative security notion, and two selective SLH variants enforce speculative constant-time security.

Tags

Computer Architecture
Implementation Attacks
Program Analysis
Software Security