cbwaw/
lib.rs

1use argon2::Argon2;
2use opaque_ke::ciphersuite::CipherSuite;
3
4pub use opaque_ke::ServerSetup;
5pub use rand::rngs::OsRng;
6
7#[cfg(feature = "core")]
8pub mod keys;
9
10pub mod login;
11pub mod registration;
12
13#[cfg(feature = "core")]
14pub mod token;
15
16#[cfg(feature = "core")]
17mod core;
18#[cfg(feature = "core")]
19pub use core::Auth;
20
21#[cfg(feature = "core")]
22pub mod recovery;
23
24#[cfg(feature = "client")]
25mod client;
26#[cfg(feature = "client")]
27pub use client::AuthClient;
28
29pub struct DefaultCipherSuite;
30
31impl CipherSuite for DefaultCipherSuite {
32    type OprfCs = opaque_ke::Ristretto255;
33    type KeGroup = opaque_ke::Ristretto255;
34    type KeyExchange = opaque_ke::key_exchange::tripledh::TripleDh;
35
36    type Ksf = Argon2<'static>;
37}
38
39pub const MAX_ACCOUNT_LEN: u8 = 255;