quantum_sign/
lib.rs

1//! Quantum‑Sign unified crate (lib + CLI).
2//!
3//! Exposes internal modules for cryptography, format, and policy, and
4//! includes the `quantum-sign` CLI as a binary target.
5#![doc = include_str!("../docs/CLI.md")]
6
7pub mod crypto;
8pub mod drbg;
9pub mod format;
10pub mod policy;
11pub mod transparency;
12pub mod tsp;
13pub mod verify;
14
15/// Commonly used types and functions.
16pub mod prelude {
17    // Re-export a curated set to avoid ambiguous glob exports.
18    pub use crate::crypto::{
19        keypair_mldsa87, kid_from_public_key, kid_from_spki_der, public_key_to_spki, sign_mldsa87,
20        spki_der_canonical, spki_mldsa_paramset, spki_subject_key_bytes, verify_mldsa87,
21        verify_mldsa87_spki, CryptoError, DigestAlg, DrbgError, HmacSha512Drbg, Keypair,
22    };
23    pub use crate::format::{Error as FormatError, QSig, Signer, Transparency};
24    pub use crate::policy::{
25        canonical_hash, load_policy_file, load_policy_str, Error as PolicyError,
26        Format as PolicyFormat, Policy, RequiredSignatures, ValidationError,
27    };
28    pub use crate::verify::*;
29}