hashiverse_lib/tools/mod.rs
1//! # Shared primitives
2//!
3//! The foundation layer the rest of the crate builds on: core identity and hash
4//! newtypes, wire-format time and duration, the Blake3/Ed25519/ChaCha20 crypto
5//! stack, the multi-algorithm proof-of-work chain and its parallel search engine,
6//! hierarchical time buckets, compression, serde helpers, and the
7//! [`runtime_services::RuntimeServices`] bundle that lets the same protocol code
8//! run on native, WASM, and deterministic test environments.
9
10pub mod types;
11pub mod config;
12pub mod keys;
13pub mod keys_post_quantum;
14pub mod time;
15pub mod tools;
16pub mod server_id;
17pub mod client_id;
18pub mod encryption;
19pub mod compression;
20pub mod signing;
21pub mod hashing;
22pub mod pow;
23pub mod pow_required_estimator;
24pub mod decaying_counter;
25pub mod pow_generator;
26pub mod runtime_services;
27pub mod anyhow_asserts;
28pub mod buckets;
29pub mod json;
30pub mod time_provider;
31pub mod bytes_gatherer;
32pub use bytes_gatherer::BytesGatherer;
33pub mod url_preview;
34pub mod hyper_log_log;
35pub mod plain_text_post;
36// Server-only: cert-chain validation for HTTPS transport-ownership-proof verification.
37// Depends on rustls-webpki → ring, which needs a C toolchain to build for wasm. The wasm
38// client never verifies ownership proofs (that path lives in hashiverse-server-lib), so the
39// module and its deps are excluded from the wasm build. See the matching target table in Cargo.toml.
40#[cfg(not(target_arch = "wasm32"))]
41pub mod cert_validation;
42
43