ling_crypto/lib.rs
1//! Ling cryptography — classical + post-quantum primitives.
2//!
3//! # Modules
4//! - [`hash`] — BLAKE3, SHA3-256/512, SHAKE-256
5//! - [`symmetric`] — AES-256-GCM, XChaCha20-Poly1305
6//! - [`asymmetric`] — Ed25519 signatures, X25519 ECDH
7//! - [`kdf`] — Argon2id, HKDF-SHA3
8//! - [`pq`] — ML-KEM-768 (post-quantum KEM, FIPS 203) — real implementation
9//! - [`pq_sig`] — ML-DSA-65 (post-quantum signatures, FIPS 204)
10//! - [`hybrid`] — X25519 + ML-KEM-768 hybrid KEM (the PQ-migration primitive)
11//! - [`geo`] — Geometric suite: knot identities (PQ KEM), 3-D knot key
12//! fingerprints, and a 4-D holographic all-or-nothing transform
13//! - [`shamir`] — Shamir's Secret Sharing over GF(2⁸)
14//! - [`zkp`] — Schnorr zero-knowledge proof of knowledge
15//! - [`vrf`] — Verifiable Random Function (Ed25519-based)
16//! - [`mandala`] — Mandala Hash — custom geometric key derivation
17
18pub mod asymmetric;
19pub mod geo;
20pub mod hash;
21pub mod hybrid;
22pub mod kdf;
23pub mod mandala;
24pub mod pq;
25pub mod pq_sig;
26pub mod shamir;
27pub mod symmetric;
28pub mod vrf;
29pub mod zkp;
30
31pub use asymmetric::{Ed25519Keypair, X25519Secret};
32pub use geo::{
33 gather, holo_hash, holo_open, holo_seal, knot_encapsulate, scatter, HoloFragment, KnotIdentity,
34 KnotShape,
35};
36pub use hash::{Blake3, Sha3_256, Sha3_512, Shake256};
37pub use hybrid::{encapsulate as hybrid_encapsulate, HybridKeypair};
38pub use kdf::{hkdf_sha3, Argon2idParams};
39pub use mandala::{MandalaHash, MandalaParams};
40pub use pq::{encapsulate as mlkem768_encapsulate, MlKem768Keypair};
41pub use pq_sig::MlDsa65Keypair;
42pub use shamir::{reconstruct_secret, split_secret, Share};
43pub use symmetric::{AesGcm256, XChaCha20};
44pub use vrf::{VrfKeypair, VrfProof};
45pub use zkp::{SchnorrKeypair, SchnorrProof};