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>
21 lines
732 B
Rust
21 lines
732 B
Rust
//! Shared OPAQUE (RFC 9497) cipher suite configuration.
|
|
//!
|
|
//! Both client and server import this module to ensure they use exactly
|
|
//! the same cryptographic parameters during registration and login.
|
|
|
|
use opaque_ke::CipherSuite;
|
|
|
|
/// OPAQUE cipher suite for quicnprotochat.
|
|
///
|
|
/// - **OPRF**: Ristretto255 (curve25519-based, ~128-bit security)
|
|
/// - **Key exchange**: Triple-DH (3DH) over Ristretto255 with SHA-512
|
|
/// - **KSF**: Argon2id (memory-hard key stretching)
|
|
pub struct OpaqueSuite;
|
|
|
|
impl CipherSuite for OpaqueSuite {
|
|
type OprfCs = opaque_ke::Ristretto255;
|
|
type KeyExchange =
|
|
opaque_ke::key_exchange::tripledh::TripleDh<opaque_ke::Ristretto255, sha2::Sha512>;
|
|
type Ksf = argon2::Argon2<'static>;
|
|
}
|