English

RTL2M$\mu$PATH: Multi-$\mu$PATH Synthesis with Applications to Hardware Security Verification

Cryptography and Security 2024-10-01 v1 Hardware Architecture

Abstract

The Check tools automate formal memory consistency model and security verification of processors by analyzing abstract models of microarchitectures, called μ\muSPEC models. Despite the efficacy of this approach, a verification gap between μ\muSPEC models, which must be manually written, and RTL limits the Check tools' broad adoption. Our prior work, called RTL2μ\muSPEC, narrows this gap by automatically synthesizing formally verified μ\muSPEC models from SystemVerilog implementations of simple processors. But, RTL2μ\muSPEC assumes input designs where an instruction (e.g., a load) cannot exhibit more than one microarchitectural execution path (μ\muPATH, e.g., a cache hit or miss path) -- its single-execution-path assumption. In this paper, we first propose an automated approach and tool, called RTL2Mμ\muPATH, that resolves RTL2μ\muSPEC's single-execution-path assumption. Given a SystemVerilog processor design, instruction encodings, and modest design metadata, RTL2Mμ\muPATH finds a complete set of formally verified μ\muPATHs for each instruction. Next, we make an important observation: an instruction that can exhibit more than one μ\muPATH strongly indicates the presence of a microarchitectural side channel in the input design. Based on this observation, we then propose an automated approach and tool, called SynthLC, that extends RTL2Mμ\muPATH with a symbolic information flow analysis to support synthesizing a variety of formally verified leakage contracts from SystemVerilog processor designs. Leakage contracts are foundational to state-of-the-art defenses against hardware side-channel attacks. SynthLC is the first automated methodology for formally verifying hardware adherence to them.

Keywords

Cite

@article{arxiv.2409.19478,
  title  = {RTL2M$\mu$PATH: Multi-$\mu$PATH Synthesis with Applications to Hardware Security Verification},
  author = {Yao Hsiao and Nikos Nikoleris and Artem Khyzha and Dominic P. Mulligan and Gustavo Petri and Christopher W. Fletcher and Caroline Trippel},
  journal= {arXiv preprint arXiv:2409.19478},
  year   = {2024}
}

Comments

Authors' version; to appear in the Proceedings of the 57th Annual IEEE/ACM International Symposium on Microarchitecture 57th (MICRO 2024)

R2 v1 2026-06-28T19:00:44.271Z