English

Solver-Aided Constant-Time Circuit Verification

Cryptography and Security 2021-04-02 v1 Programming Languages

Abstract

We present Xenon, a solver-aided method for formally verifying that Verilog hardware executes in constant-time. Xenon scales to realistic hardware designs by drastically reducing the effort needed to localize the root cause of verification failures via a new notion of constant-time counterexamples, which Xenon uses to automatically synthesize a minimal set of secrecy assumptions. Xenon further exploits modularity in Verilog code via a notion of module summaries, thereby avoiding duplicate work across multiple module instantiations. We show how Xenon's assumption synthesis and summaries enable the verification of a variety of circuits including AES, a highly modular AES-256 implementation where modularity cuts verification from six hours to under three seconds, and ScarV, a timing channel hardened RISC-V micro-controller whose size exceeds previously verified designs by an order of magnitude.

Keywords

Cite

@article{arxiv.2104.00461,
  title  = {Solver-Aided Constant-Time Circuit Verification},
  author = {Rami Gokhan Kici and Klaus v. Gleissenthall and Deian Stefan and Ranjit Jhala},
  journal= {arXiv preprint arXiv:2104.00461},
  year   = {2021}
}
R2 v1 2026-06-24T00:46:23.133Z