bitwarden_core/mobile/
kdf.rs

1use bitwarden_crypto::{CryptoError, HashPurpose, Kdf, MasterKey};
2
3pub(super) async fn hash_password(
4    email: String,
5    password: String,
6    kdf_params: Kdf,
7    purpose: HashPurpose,
8) -> Result<String, CryptoError> {
9    let master_key = MasterKey::derive(&password, &email, &kdf_params)?;
10
11    master_key.derive_master_key_hash(password.as_bytes(), purpose)
12}