bitwarden_crypto/keys/
mod.rs

1mod key_encryptable;
2pub(crate) use key_encryptable::KeyEncryptableWithContentType;
3pub use key_encryptable::{CryptoKey, KeyContainer, KeyDecryptable, KeyEncryptable};
4mod master_key;
5pub use master_key::{HashPurpose, MasterKey};
6mod shareable_key;
7pub use shareable_key::derive_shareable_key;
8mod symmetric_crypto_key;
9#[cfg(test)]
10pub use symmetric_crypto_key::derive_symmetric_key;
11pub use symmetric_crypto_key::{
12    Aes256CbcHmacKey, Aes256CbcKey, EncodedSymmetricKey, SymmetricCryptoKey, SymmetricKeyAlgorithm,
13    XChaCha20Poly1305Key,
14};
15mod asymmetric_crypto_key;
16pub use asymmetric_crypto_key::{
17    AsymmetricCryptoKey, AsymmetricPublicCryptoKey, PublicKeyEncryptionAlgorithm,
18};
19pub(crate) use asymmetric_crypto_key::{RawPrivateKey, RawPublicKey};
20mod signed_public_key;
21pub use signed_public_key::{SignedPublicKey, SignedPublicKeyMessage};
22mod user_key;
23pub use user_key::UserKey;
24mod device_key;
25pub use device_key::{DeviceKey, TrustDeviceResponse};
26mod pin_key;
27pub use pin_key::PinKey;
28mod kdf;
29#[allow(deprecated)]
30pub use kdf::dangerous_derive_kdf_material;
31mod key_id;
32pub use kdf::{
33    Kdf, default_argon2_iterations, default_argon2_memory, default_argon2_parallelism,
34    default_pbkdf2_iterations,
35};
36pub(crate) use key_id::{KEY_ID_SIZE, KeyId};
37pub(crate) mod utils;