Skip to main content

Hardware Support for Constant-Time Programming

Publication ,  Conference
Miao, Y; Kandemir, MT; Zhang, D; Zhang, Y; Tan, G; Wu, D
Published in: Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023
October 28, 2023

Side-channel attacks are one of the rising security concerns in modern computing platforms. Observing this, researchers have proposed both hardware-based and software-based strategies to mitigate side-channel attacks, targeting not only on-chip caches but also other hardware components like memory controllers and on-chip networks. While hardware-based solutions to side-channel attacks are usually costly to implement as they require modifications to the underlying hardware, software-based solutions are more practical as they can work on unmodified hardware. One of the recent software-based solutions is constant-time programming, which tries to transform an input program to be protected against side-channel attacks such that an operation working on a data element/block to be protected would execute in an amount of time that is independent of the input. Unfortunately, while quite effective from a security angle, constant-time programming can lead to severe performance penalties. Motivated by this observation, in this paper, we explore novel hardware support to make constant-time programming much more efficient than its current implementations. Specifically, we present a new hardware component that can greatly improve the performance of constant-time programs with large memory footprints. The key idea in our approach is to add a small structure into the architecture and two accompanying instructions, which collectively expose the existence/dirtiness information of multiple cache lines to the application program, so that the latter can perform more efficient side-channel mitigation. Our experimental evaluation using three benchmark programs with secret data clearly show the effectiveness of the proposed approach over a state-of-the-art implementation of constant-time programming. Specifically, in the three benchmark programs tested, our approach leads to about 7x reduction in performance overheads over the state-of-the-art approach.

Duke Scholars

Published In

Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023

DOI

Publication Date

October 28, 2023

Start / End Page

856 / 870
 

Citation

APA
Chicago
ICMJE
MLA
NLM
Miao, Y., Kandemir, M. T., Zhang, D., Zhang, Y., Tan, G., & Wu, D. (2023). Hardware Support for Constant-Time Programming. In Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023 (pp. 856–870). https://doi.org/10.1145/3613424.3623796
Miao, Y., M. T. Kandemir, D. Zhang, Y. Zhang, G. Tan, and D. Wu. “Hardware Support for Constant-Time Programming.” In Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023, 856–70, 2023. https://doi.org/10.1145/3613424.3623796.
Miao Y, Kandemir MT, Zhang D, Zhang Y, Tan G, Wu D. Hardware Support for Constant-Time Programming. In: Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023. 2023. p. 856–70.
Miao, Y., et al. “Hardware Support for Constant-Time Programming.” Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023, 2023, pp. 856–70. Scopus, doi:10.1145/3613424.3623796.
Miao Y, Kandemir MT, Zhang D, Zhang Y, Tan G, Wu D. Hardware Support for Constant-Time Programming. Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023. 2023. p. 856–870.

Published In

Proceedings of the 56th Annual IEEE ACM International Symposium on Microarchitecture Micro 2023

DOI

Publication Date

October 28, 2023

Start / End Page

856 / 870