Spoq: Scaling Machine-Checkable Systems Verification in Coq
Xupeng Li, Xuheng Li, Wei Qiang, Ronghui Gu, Jason Nieh
摘要
System software is often large and complex, resulting in many vulnerabilities that can potentially be exploited to compromise the security of a system. Formal verification offers a potential solution to creating bug-free software, but a key impediment to its adoption remains proof cost. We present Spoq, a highly automated verification framework to construct machine-checkable proofs in Coq for system software with much less proof cost. Spoq introduces a novel program structure reconstruction technique to leverage LLVM to translate C code into Coq, supporting full C semantics, including C macros, inline assembly, and compiler directives, so that source code no longer has to be manually modified to be verified. Spoq leverages a layering proof strategy and introduces novel Coq tactics and transformation rules to automatically generate layer specifications and refinement proofs to simplify verification of concurrent system software. Spoq also supports easy integration of manually written layer specifications and refinement proofs. We use Spoq to verify a multiprocessor KVM hypervisor implementation. Verification using Spoq required 70% less proof effort than the manually written specifications and proofs to verify an older implementation. Furthermore, the proofs using Spoq hold for the unmodified implementation that is directly compiled and executed.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper8
- Verus: A Practical Foundation for Systems VerificationAndrea Lattuada, Travis Hance, Jay Bosamiya, Matthias Brun 等SOSP 2024 · 被引用 22 次
- MeshTest: End-to-End Testing for Service Mesh Traffic ManagementNaiqian Zheng, Tianshuo Qiao, Xuanzhe Liu, Xin JinNSDI 2025 · 被引用 7 次
- AutoMan: Facilitating Verified Distributed Systems Development Through Automatic Code Generation and Manual OptimizationsZihao Zhang, Ti Zhou, Christa Jenkins, Omar Chowdhury 等SOSP 2025 · 被引用 2 次
- Verifying Rust Implementation of Page Tables in a Software Enclave HypervisorZhenyang Dai, Shuang Liu, Vilhelm Sjöberg, Xupeng Li 等ASPLOS 2024 · 被引用 2 次
- Practical Verification of System-Software Components Written in Standard CCan Cebeci, Yonghao Zou, Diyu Zhou, George Candea 等SOSP 2024 · 被引用 2 次
它引用的顶会 Paper10
- HACL*: A Verified Modern Cryptographic LibraryJean Karim Zinzindohoué, Karthikeyan Bhargavan, Jonathan Protzenko, Benjamin BeurdoucheCCS 2017 · 被引用 258 次
- An In-Depth Analysis of Disassembly on Full-Scale x86/x64 BinariesDennis Andriesse, Xi Chen, Victor van der Veen, Asia Slowinska 等USENIX Security 2016 · 被引用 162 次
- EverCrypt: A Fast, Verified, Cross-Platform Cryptographic ProviderJonathan Protzenko, Bryan Parno, Aymeric Fromherz, Chris Hawblitzel 等S&P 2020 · 被引用 114 次
- A Secure and Formally Verified Linux KVM HypervisorShih-Wei Li, Xupeng Li, Ronghui Gu, Jason Nieh 等S&P 2021 · 被引用 72 次
- Design and Verification of the Arm Confidential Compute ArchitectureXupeng Li, Xuheng Li, Christoffer Dall, Ronghui Gu 等OSDI 2022 · 被引用 60 次
相关 Paper
- Highly Automated Verification of Security Properties for Unmodified System SoftwareGanxiang Yang, Wei Qiang, Yi Rong, Xuheng Li 等ASPLOS 2026 · 被引用 1 次
- Formally Verified Memory Protection for a Commodity Multiprocessor HypervisorShih-Wei Li, Xupeng Li, Ronghui Gu, Jason Nieh 等USENIX Security 2021 · 被引用 48 次
- Integration verification across software and hardware for a simple embedded systemAndres Erbsen, Samuel Gruetter, Joonwon Choi, Clark Wood 等PLDI 2021 · 被引用 29 次
- Formal Verification of a Multiprocessor Hypervisor on Arm Relaxed Memory HardwareRunzhou Tao, Jianan Yao, Xupeng Li, Shih-Wei Li 等SOSP 2021 · 被引用 24 次
- Cobblestone: A Divide-and-Conquer Approach for Automating Formal VerificationSaketh Ram Kasibatla, Arpan Agrawal, Yuriy Brun, Sorin Lerner 等ICSE 2026 · 被引用 3 次
