An in-depth survey examining cache-timing, branch prediction, and memory bus vulnerabilities discovered in early lattice implementations and their modern mitigations.
While classical RSA and ECC vulnerabilities often centered on modular exponentiation timing, lattice cryptosystems introduce new microarchitectural surfaces: large polynomial vector structures, discrete Gaussian and binomial sampling loops, and matrix-vector polynomial operations across memory hierarchies.
We review the real-world KyberSlash vulnerabilities, where division operations in polynomial decoding leaked secret key information through variable execution latency on certain CPU architectures. We explain the mathematical and assembly modifications implemented to guarantee constant-cycle decoding.
A blueprint for combining constant-time assembly routines, compiler verification flags, microarchitectural execution barriers, and confidential computing enclaves into a unified, attack-resilient deployment model.