Zero-Knowledge Model Checking
Pascal Berrang, Mirco Giacobbe, Jacob Swales, Xiao Yang
TLDR
This paper introduces Zero-Knowledge Model Checking, a method to formally verify software systems' correctness without revealing the system itself.
Key contributions
- Combines deductive model checking with zero-knowledge proofs for system verification.
- Presents an explicit-state ZK model checking scheme using polynomial commitments.
- Develops a symbolic ZK model checking scheme based on Farkas' lemma and sigma protocols.
- Demonstrates practical efficacy with a prototype on linear temporal logic examples.
Why it matters
This technology enables formal verification in domains where both the safety and confidentiality of the system under analysis are critical. It provides a crucial tool for ensuring correctness without compromising sensitive intellectual property or privacy.
Original Abstract
We introduce a technology to formally verify that a software system satisfies a temporal specification of functional correctness, without revealing the system itself. Our method combines a deductive approach to model checking to obtain a formal certificate of correctness for the system, with zero-knowledge proofs to convince an external verifier that the system -- kept secret -- complies with its specification of correctness -- made public. We consider proof certificates represented as ranking functions, and introduce both an explicit-state and a symbolic scheme for model checking in zero knowledge. Our explicit-state scheme assumes systems represented as transition graphs. We use polynomial commitments to convince the verifier that the public proof certificates correspond to the secret transition relation. Our symbolic scheme assumes systems specified as linear guarded commands and uses piecewise-linear ranking functions. We apply Farkas' lemma to obtain a witness for the validity of the ranking function with public and secret components, and employ sigma protocols for matrix multiplication and range proofs to convince the verifier of the witness's existence. We built a prototype to demonstrate the practical efficacy of our two schemes on linear temporal logic verification examples. Our technology enables formal verification in domains where both the safety and the confidentiality of the system under analysis are critical.
📬 Weekly AI Paper Digest
Get the top 10 AI/ML arXiv papers from the week — summarized, scored, and delivered to your inbox every Monday.