학술논문

Adaptive Compiler Strategies for Mitigating Timing Side Channel Attacks
Document Type
Periodical
Source
IEEE Transactions on Dependable and Secure Computing IEEE Trans. Dependable and Secure Comput. Dependable and Secure Computing, IEEE Transactions on. 17(1):35-49 Jan, 2020
Subject
Computing and Processing
Software
Timing
Computer architecture
Side-channel attacks
Transforms
Prototypes
Indexes
JIT compiler
adaptive protection
time side channels
code transformations
efficiency
effectiveness
trade-off
profiling
Language
ISSN
1545-5971
1941-0018
2160-9209
Abstract
Existing compiler techniques can transform code to make its timing behavior independent of sensitive values to prevent information leakage through time side channels. Those techniques are hampered, however, by their static nature and dependence on details of the processor targeted during the compilation. This paper presents a dynamic compiler approach based on offline profiles and JIT compiler strategies. This approach reduces overhead significantly and enables a trade-off between provided protection and overhead. Furthermore, it supports adaptive policies in which the protection adapts to run-time changes in the requirements. A prototype implementation in the Jikes Research VM is evaluated on RSA encryption, HMAC key verification, and IDEA encryption.