PhantomCache: Obfuscating Cache Conflicts with Localized Randomization
Qinhan Tan, Zhihua Zeng, Kai Bu, Kui Ren · 2020
Cache conflicts due to deterministic memory-tocache mapping have long been exploited to leak sensitive information such as secret keys.While randomized mapping is fully investigated for L1 caches, it still remains unresolved about how to secure a much larger last-level cache (LLC).Recent solutions periodically change the mapping strategy to disrupt the crafting of conflicted addresses, which is a critical attack procedure to exploit cache conflicts.Remapping, however, increases both miss rate and access latency.We present PhantomCache for securing an LLC with remapping-free randomized mapping.We propose a localized randomization technique to bound randomized mapping of a memory address within only a limited number of cache sets.The small randomization space offers fast set search over an LLC in a memory access.The intrinsic randomness still suffices to obfuscate conflicts and disrupt efficient exploitation of conflicted addresses.We evaluate PhantomCache against an attacker exploring the state-of-the-art attack with linear-complexity.To secure an 8-bank 16 MB 16-way LLC, PhantomCache confines randomization space of an address within 8 sets and brings only 1.20% performance degradation on individual benchmarks, 0.50% performance degradation on mixed workloads, and 0.50% storage overhead per cache line, which are 2x and 9x more efficient than the state-of-the-art solutions.Moreover, PhantomCache is solely an architectural solution and requires no software change.