Date of Completion
Honors College Thesis
Dr. Joseph Near
differential obliviousness, zero-knowledge proof, differential privacy, automation, compiler, security
Verifiable computation provides means for a local party to outsource program
execution to an untrusted third party while having the guarantee that the
program was run correctly. Zero-knowledge proofs are the foundation for such
protocols, which allow one party (the prover) to convince another party (the
verifier) that they know a secret without revealing the secret itself. It is a
fact that the control flow of programs during execution can reveal information
about variables within the code, and thus could reveal information about the
secret in a zero-knowledge proof. Current approaches to solve this issue are
both burdensome on the programmer and can lead to inefficient circuits. The
compiler proposed in this paper applies the notions of differential
obliviousness to zero-knowledge proof systems, which provides a guarantee that
the control flow of the program satisfies differential privacy with respect to
the secret. Furthermore, the compiler seeks to fully automate differential
obliviousness, such that the programmer can write algorithms and be guaranteed
privacy with virtually no extra work.
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License.
Putman, Levi, "Automating Differential Obliviousness in Zero-knowledge Proof Systems" (2023). UVM Honors College Senior Theses. 586.