Parameter Generation

Parameter Generation and Trusted Setup

This document describes the parameter generation process and trusted setup ceremony for the Roru Protocol's zero-knowledge proof system.

Overview

Purpose

Generate the proving and verifying keys needed for zero-knowledge proof generation and verification.

Setup Types

Trusted Setup: Requires trust in setup participants.

Verifiable Setup: Setup can be verified but still requires some trust.

No Setup: No setup required (if possible).

Groth16 Setup

Setup Process

Phase 1: Powers of Tau

  1. Generate random tau

  2. Compute powers: tau, tau^2, ..., tau^n

  3. Publish powers (without revealing tau)

Phase 2: Circuit-Specific

  1. Generate random alpha, beta

  2. Compute circuit-specific parameters

  3. Combine with powers of tau

Setup Output

Proving Key: Used to generate proofs Verifying Key: Used to verify proofs

Multi-Party Computation

MPC Setup

Process:

  1. Multiple participants

  2. Each contributes randomness

  3. Combine contributions

  4. Final parameters computed

Security: As long as one participant is honest, setup is secure.

Ceremony Structure

Ceremony Steps:

  1. Participant registration

  2. Contribution phase

  3. Verification phase

  4. Finalization

Parameter Format

Proving Key

Key Structure:

  • Circuit-specific parameters

  • Precomputed values

  • Optimization data

Verifying Key

Key Structure:

  • Public verification parameters

  • Circuit structure

  • Verification data

Security Considerations

Trust Requirements

Trust Model:

  • Trust in setup participants

  • Trust in ceremony execution

  • Trust in parameter distribution

Mitigation Strategies

Strategies:

  • Multi-party computation

  • Public ceremony

  • Verifiable contributions

  • Transparency

Parameter Distribution

Distribution Method

Distribution:

  • Public verification keys

  • Secure proving keys

  • Hash verification

  • Signature verification

Verification

Verification Process:

  1. Download parameters

  2. Verify hash

  3. Verify signature

  4. Use for proofs

Conclusion

Parameter generation provides:

  • Security: Cryptographic parameters

  • Trust: Transparent process

  • Verification: Verifiable setup

  • Distribution: Secure distribution

  • Confidence: Trusted process

Understanding setup is essential for security.

Last updated