PulseExploreJournal ClubDebatesTrendingResearchersJournals
Instagram
HomeExploreJournal ClubTrending
Synapse
⌘+K
Synapse
April 12, 2026Proceedings of the ACM on Programming Languages0 citationsOpen Access

(Dis)Proving Spectre Security with Speculation-Passing Style

View Full Paper
SOSantiago Arranz OlmosMax Planck Institute for Security and PrivacyGBGilles BartheMax Planck Institute for Security and PrivacyLBLionel BlatterMax Planck Institute for Security and Privacy

Key Points

  • The aim is to create formal foundations for speculative constant-time tools to verify Spectre vulnerabilities effectively.
  • Developed a transformation called Speculation-Passing Style (SPS).
  • Instrumented programs to include attacker-controlled predictions.
  • Combined SPS with three methodologies for constant-time verification.
  • Showed that a program is speculative constant-time if its SPS transform is constant-time.
  • Validated the approach using three existing tools on Kocher's benchmarks for Spectre-v1.
  • Results indicate practical benefits of leveraging CT verification tools for SCT analysis.

Abstract

Constant-time (CT) verification tools are commonly used for detecting potential side-channel vulnerabilities in cryptographic libraries. Recently, a new class of tools, called speculative constant-time (SCT) tools, has also been used for detecting potential Spectre vulnerabilities. In many cases, these SCT tools have emerged as liftings of CT tools. However, these liftings are seldom defined precisely and are almost never analyzed formally. The goal of this paper is to address this gap, by developing formal foundations for these liftings, and to demonstrate that these foundations can yield practical benefits. Concretely, we introduce a program transformation, coined Speculation-Passing Style (SPS), for reducing SCT verification to CT verification. Essentially, the transformation instruments the program with a new input that corresponds to attacker-controlled predictions and modifies the program to follow them. This approach is sound and complete, in the sense that a program is SCT if and only if its SPS transform is CT. Thus, we can leverage existing CT verification tools to prove SCT; we illustrate this by combining SPS with three standard methodologies for CT verification, namely reducing it to noninterference, assertion safety, and dynamic taint analysis. We realize these combinations with three existing tools, EasyCrypt, Binsec/Rel, and CTGrind, and we evaluate them on Kocher’s benchmarks for Spectre-v1. Our results focus on Spectre-v1 in the standard CT leakage model; however, we also discuss applications of our method to other variants of Spectre and other leakage models.

Ask AI
Helpful
Bookmark
Share
View Full Paper

Cite This Study

Olmos et al. (2026) studied this question.

synapsesocial.com/papers/69db38274fe01fead37c65c0https://doi.org/10.1145/3798222
Ask AI
Helpful
Bookmark
Share
View Full Paper