Add comprehensive documentation comparing quicnprotochat against classical chat protocols (IRC+SSL, XMPP, Telegram) with diagrams and attack scenarios. Promote comparison pages to top-level sidebar section. Include P2P transport crate (iroh), production readiness audit, CI workflows, dependency policy, and continued architecture improvements across all crates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
34 lines
1.5 KiB
Rust
34 lines
1.5 KiB
Rust
//! Core cryptographic primitives, MLS group state machine, and hybrid
|
|
//! post-quantum KEM for quicnprotochat.
|
|
//!
|
|
//! # Module layout
|
|
//!
|
|
//! | Module | Responsibility |
|
|
//! |--------------|------------------------------------------------------------------|
|
|
//! | `error` | [`CoreError`] type |
|
|
//! | `identity` | [`IdentityKeypair`] — Ed25519 identity key for MLS credentials |
|
|
//! | `keypackage` | [`generate_key_package`] — standalone KeyPackage generation |
|
|
//! | `group` | [`GroupMember`] — MLS group lifecycle (create/join/send/recv) |
|
|
//! | `hybrid_kem` | Hybrid X25519 + ML-KEM-768 key encapsulation |
|
|
//! | `keystore` | [`DiskKeyStore`] — OpenMLS key store with optional persistence |
|
|
|
|
mod error;
|
|
mod group;
|
|
pub mod hybrid_kem;
|
|
mod identity;
|
|
mod keypackage;
|
|
mod keystore;
|
|
pub mod opaque_auth;
|
|
|
|
// ── Public API ────────────────────────────────────────────────────────────────
|
|
|
|
pub use error::CoreError;
|
|
pub use group::GroupMember;
|
|
pub use hybrid_kem::{
|
|
hybrid_decrypt, hybrid_encrypt, HybridKemError, HybridKeypair, HybridKeypairBytes,
|
|
HybridPublicKey,
|
|
};
|
|
pub use identity::IdentityKeypair;
|
|
pub use keypackage::{generate_key_package, validate_keypackage_ciphersuite};
|
|
pub use keystore::DiskKeyStore;
|