Coinductive Proofs of Regular Expression Equivalence in Zero Knowledge
By: John Kolesar , Shan Ali , Timos Antonopoulos and more
Potential Business Impact:
Proves programs match without showing secrets.
Zero-knowledge (ZK) protocols enable software developers to provide proofs of their programs' correctness to other parties without revealing the programs themselves. Regular expressions are pervasive in real-world software, and zero-knowledge protocols have been developed in the past for the problem of checking whether an individual string appears in the language of a regular expression, but no existing protocol addresses the more complex PSPACE-complete problem of proving that two regular expressions are equivalent. We introduce Crepe, the first ZK protocol for encoding regular expression equivalence proofs and also the first ZK protocol to target a PSPACE-complete problem. Crepe uses a custom calculus of proof rules based on regular expression derivatives and coinduction, and we introduce a sound and complete algorithm for generating proofs in our format. We test Crepe on a suite of hundreds of regular expression equivalence proofs. Crepe can validate large proofs in only a few seconds each.
Similar Papers
Towards Practical Zero-Knowledge Proof for PSPACE
Cryptography and Security
Lets computers prove hard math problems are true.
Zero-Knowledge Proofs in Sublinear Space
Cryptography and Security
Lets computers prove things without showing secrets.
Towards Fuzzing Zero-Knowledge Proof Circuits (Short Paper)
Cryptography and Security
Finds hidden mistakes in secret computer codes.