ZK-SNARK Systems

ZK-SNARK Systems - Technical Overview

This document provides a technical overview of zero-knowledge succinct non-interactive arguments of knowledge (zk-SNARKs) used in Roru.

Overview

What Are zk-SNARKs

zk-SNARKs allow proving knowledge of a witness satisfying certain constraints without revealing the witness.

Properties

Zero-Knowledge: Reveals no information about witness.

Succinct: Small proof size.

Non-Interactive: No interaction between prover and verifier.

Arguments: Computational soundness.

Groth16 System

System Used

Groth16: The zk-SNARK system used in Roru.

Properties:

  • Small proof size (~1-2 KB)

  • Fast verification (<100ms)

  • Efficient generation

Proof Structure

Components:

  • A, B, C: Proof points

  • Public inputs: Public values

Circuit Design

Constraint System

Constraints: Mathematical relationships that must be satisfied.

Types:

  • Arithmetic constraints

  • Boolean constraints

  • Range constraints

Conclusion

zk-SNARKs provide efficient zero-knowledge proofs with strong security guarantees.

Last updated