Skip to main content

voting_circuits/
lib.rs

1//! Governance ZKP circuits for the Zally voting protocol.
2//!
3//! Contains three circuits:
4//! - **Delegation** (ZKP #1): Proves delegation of voting rights.
5//! - **Vote Proof** (ZKP #2): Proves a valid, authorized vote.
6//! - **Share Reveal** (ZKP #3): Proves a revealed share belongs to a registered vote commitment.
7
8#![deny(missing_debug_implementations)]
9#![deny(unsafe_code)]
10
11mod domain_tags;
12mod gadgets;
13mod params;
14mod protocol_hash;
15mod prove_error;
16mod shares_hash;
17
18pub use gadgets::elgamal::spend_auth_g_affine;
19pub use params::VOTE_COMM_TREE_DEPTH;
20pub use prove_error::ProveError;
21pub use shares_hash::{share_commitment, shares_hash, shares_hash_from_comms};
22
23pub mod delegation;
24pub mod share_reveal;
25pub mod vote_proof;