Constantine: Automatic Side-Channel Resistance Using Efficient Control and Data Flow Linearization
Not on the map. Why?
Abstract (arXiv)
In the era of microarchitectural side channels, vendors scramble to deploy mitigations for transient execution attacks, but leave traditional side-channel attacks against sensitive software (e.g., crypto programs) to be fixed by developers by means of constant-time programming (i.e., absence of secret-dependent code/data patterns). Unfortunately, writing constant-time code by hand is hard, as evidenced by the many flaws discovered in production side channel-resistant code. Prior efforts to automatically transform programs into constant-time equivalents offer limited security or compatibility guarantees, hindering their applicability to real-world software. In this paper, we present Constantine, a compiler-based system to automatically harden programs against microarchitectural side channels. Constantine pursues a radical design point where secret-dependent control and data flows are completely linearized (i.e., all involved code/data accesses are always executed). This strategy provides strong security and compatibility guarantees by construction, but its natural implementation leads to state explosion in real-world programs. To address this challenge, Constantine relies on carefully designed optimizations such as just-in-time loop linearization and aggressive function cloning for fully context-sensitive points-to analysis, which not only address state explosion, but also lead to an efficient and compatible solution. Constantine yields overheads as low as 16% on standard benchmarks and can handle a fully-fledged component from the production wolfSSL library.
Key facts. Cited by 2 papers in the map (data through 7 Oct 2026). First posted on arXiv 21 Apr 2021.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2022: 1; 2023: 1.
2 papers.
- 2023Adversarial Attacks against Binary Similarity Systemscited by 3
- 2022Securing Optimized Code Against Power Side Channelscited by 0
- 2023Adversarial Attacks against Binary Similarity Systems20 Mar 2023
- 2022Securing Optimized Code Against Power Side Channels6 Jul 2022