Rename all crate directories, package names, binary names, proto package/module paths, ALPN strings, env var prefixes, config filenames, mDNS service names, and plugin ABI symbols from quicproquo/qpq to quicprochat/qpc.
21 lines
729 B
Rust
21 lines
729 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 quicprochat.
|
|
///
|
|
/// - **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>;
|
|
}
|