Two Shuffles Make a {RAM}: Improved Constant Overhead Zero Knowledge {RAM}
We optimize Zero Knowledge (ZK) proofs of statements expressed as RAM programs over
arithmetic values. Our arithmetic-circuit-based read/write memory uses only 4 input gates …
arithmetic values. Our arithmetic-circuit-based read/write memory uses only 4 input gates …
Constant-overhead zero-knowledge for RAM programs
We show a constant-overhead interactive zero-knowledge (ZK) proof system for RAM
programs, that is, a ZK proof in which the communication complexity as well as the running …
programs, that is, a ZK proof in which the communication complexity as well as the running …
CirC: Compiler infrastructure for proof systems, software verification, and more
Cryptographic tools like proof systems, multi-party computation, and fully homomorphic
encryption are usually applied to computations expressed as systems of arithmetic …
encryption are usually applied to computations expressed as systems of arithmetic …
Tight zk cpu: Batched zk branching with cost proportional to evaluated instruction
We explore Zero-Knowledge Proofs (ZKPs) of statements expressed as programs written in
high-level languages, eg, C or assembly. At the core of executing such programs in ZK is the …
high-level languages, eg, C or assembly. At the core of executing such programs in ZK is the …
Dora: A simple approach to zero-knowledge for RAM programs
Existing protocols for proving the correct execution of a RAM program in zero-knowledge are
plagued by a processor expressiveness tradeoff: supporting fewer instructions results in …
plagued by a processor expressiveness tradeoff: supporting fewer instructions results in …
Cheesecloth:{Zero-Knowledge} Proofs of Real World Vulnerabilities
Currently, when a security analyst discovers a vulnerability in critical software system, they
must navigate a fraught dilemma: immediately disclosing the vulnerability to the public could …
must navigate a fraught dilemma: immediately disclosing the vulnerability to the public could …
Towards generic mpc compilers via variable instruction set architectures (visas)
In MPC, we usually represent programs as circuits. This is a poor fit for programs that use
complex control flow, as it is costly to compile control flow to circuits. This motivated prior …
complex control flow, as it is costly to compile control flow to circuits. This motivated prior …
{ZKSMT}: A {VM} for Proving {SMT} Theorems in Zero Knowledge
D Luick, JC Kolesar, T Antonopoulos… - 33rd USENIX Security …, 2024 - usenix.org
Verification of program safety is often reducible to proving the unsatisfiability (ie, validity) of a
formula in Satisfiability Modulo Theories (SMT): Boolean logic combined with theories that …
formula in Satisfiability Modulo Theories (SMT): Boolean logic combined with theories that …
Zapper: Smart contracts with data and identity privacy
Privacy concerns prevent the adoption of smart contracts in sensitive domains incompatible
with the public nature of shared ledgers. We present Zapper, a privacy-focused smart …
with the public nature of shared ledgers. We present Zapper, a privacy-focused smart …
Batchman and robin: Batched and non-batched branching for interactive zk
Vector Oblivious Linear Evaluation (VOLE) supports fast and scalable interactive Zero-
Knowledge (ZK) proofs. Despite recent improvements to VOLE-based ZK, compiling proof …
Knowledge (ZK) proofs. Despite recent improvements to VOLE-based ZK, compiling proof …