Julius Alexandre
Summary: Trail of Bits developed constant-time coding support for LLVM that prevents compilers from breaking cryptographic implementations vulnerable to timing attacks. The work introduces the __builtin_ct_select family of intrinsics that preserve constant-time properties throughout compilation.
What's compelling: A compiler that silently breaks constant-time properties can reintroduce timing side channels into cryptographic code that was written to avoid them, so the protection has to hold through compilation, not just in the source.
Read the original at Trail of Bits Blog ↗