fast_certs/
lib.rs

1//! fast-certs: a tiny library exposing two publicly verifiable certificates:
2//! 1) Merkle membership proofs (hash-based).
3//! 2) Freivalds certificate (algebraic) for A * B = C with Fiat–Shamir randomness.
4//!
5//! Merkle notes:
6//! - Uses BLAKE3 with simple domain separation for leaves vs internal nodes.
7//! - Proof = O(log n) sibling hashes + directions.
8//!
9//! Freivalds notes:
10//! - All randomness is derived via Fiat–Shamir (BLAKE3 over the public statement).
11//! - Arithmetic over a 64-bit prime modulus (2^61 - 1) for speed and safety.
12//! - Proof is just the random vector r and y = A * (B r), which is extremely small.
13
14pub mod freivalds;
15pub mod merkle;