Foundations of Hardware-Software Leakage Contracts
Hardware-software leakage contracts are a new security abstraction that defines what information a program leaks at the instruction set architecture level. This allows programmers to write code provably resistant to microarchitectural side-channel attacks without needing deep knowledge of the hardware. They also give hardware designers a specification to prevent unintended side channels.