confium_crypto_zk/lib.rs
1//! Zero-knowledge proof systems and set-membership primitives.
2//!
3//! # Audit status
4//!
5//! **Unaudited.** Fiat-Shamir transcripts carry rejection-sampled
6//! challenges, but the crate has had no external cryptographic review.
7
8#![forbid(unsafe_code)]
9
10pub mod accumulator;
11pub mod threshold_abs;
12/// Experimental demonstration primitive — NOT AUDITED. The proof
13pub mod zk_key_possession;
14pub mod zk_set_membership;
15
16/// UNAUDITED: proving possession of an ECDSA *signature* without
17/// revealing it requires proving the coordinate check `x(R) ≡ r
18/// (mod n)` — a bit-decomposition relation no plain sigma-protocol
19/// carries; it needs a circuit-based (or Camenisch-style) construction.
20/// The
21/// transcript commits to the ECDSA `s` component, which a verifier
22/// cannot reconstruct without the signature itself; the shipped
23/// `verify_possession` is a placeholder that accepts any non-zero
24/// response. Do not use. Compiled only behind the
25/// `unaudited-experimental` feature.
26#[cfg(feature = "unaudited-experimental")]
27pub mod zk_sig_possession;