What is a Trusted Setup Ceremony?

A Trusted Setup Ceremony is a collaborative procedure to create the cryptographic parameters required for a zero-knowledge proof system to function securely. These parameters, often called a Common Reference String (CRS), are used to generate and verify proofs.

Think of it as creating a highly secure and special key. The "trust" in "Trusted Setup" comes from the way this key is created:

  • Without a Trusted Setup: You would have to trust a single entity (like the developers) who created the parameters. If that single entity were dishonest, they could potentially create a "backdoor" to generate fake proofs, breaking the security of the entire system.

  • With a Trusted Setup Ceremony: The responsibility of generating the parameters is distributed among many participants. Each participant adds their own piece of randomness (a secret) to the parameters and then destroys that secret. As long as at least one person in the entire ceremony is honest and properly destroys their secret, the final parameters are secure, and nobody can forge proofs.

This "1-of-N" trust assumption (where N is the number of participants) is what makes the ceremony secure. The more participants, the stronger the security guarantee.

Why is it Needed for Galactica?

Galactica Network uses ZK-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) for its privacy features. The security of these SNARKs depends on the initial parameters. An improperly or maliciously generated set of parameters could allow an attacker to create fraudulent proofsβ€”for example, generating a valid zkKYC proof without possessing the required credentials. This would completely undermine the network's promise of verifiable, private identity.

By conducting a public Trusted Setup Ceremony, we ensure that the power to create valid proofs is decentralized from the very beginning. No single party, including the Galactica core team, will have the ability to compromise the ZK circuits.

The Two Phases: From General to Specific

The creation of the final parameters happens in two distinct phases:

  1. Phase 1: Powers of Tau This is a general-purpose setup that generates universal cryptographic parameters that can be used for any ZK circuit up to a certain size. This phase is computationally intensive and only needs to be done once. The ZK ecosystem benefits from reusing the outputs of large, public Phase 1 ceremonies conducted by reputable organizations. For our circuits, we will leverage the output of a previous, widely-vetted "Powers of Tau" ceremony.

  2. Phase 2: The Circuit-Specific Ceremony This is where the Galactica community's contribution is essential. Phase 2 takes the general parameters from Phase 1 and specializes them for a specific ZK circuit. Each unique circuit requires its own Phase 2 ceremony.

    For example, Galactica will need separate ceremonies for:

    • The primary zkKYC circuit.

    • A zkKYC circuit that also proves the holder is over a certain age.

    • Any future ZK circuits developed by the community or the core team.

    During this phase, each contributor will add their own randomness to create the final, circuit-specific proving and verification keys. This is the ceremony you can participate in to help secure the Galactica Network.

Last updated

Was this helpful?