diff --git a/src/config.rs b/src/config.rs index 9c31d231892f56f4d170bf7406279f3b7b590fd7..4f2779d97ecc5b7d9810d02b9faeb4713465febb 100644 --- a/src/config.rs +++ b/src/config.rs @@ -981,8 +981,7 @@ impl Config { if let Some(akey) = self._duo_akey() { akey } else { - let akey = crate::crypto::get_random_64(); - let akey_s = data_encoding::BASE64.encode(&akey); + let akey_s = crate::crypto::encode_random_bytes::<64>(data_encoding::BASE64); // Save the new value let builder = ConfigBuilder { diff --git a/src/crypto.rs b/src/crypto.rs index daf5124dd2e24def8ee11fac96699f086dfb8102..99f0fb91c9879f1c8d7b33e4fd71bb2037e5939e 100644 --- a/src/crypto.rs +++ b/src/crypto.rs @@ -37,10 +37,6 @@ pub fn hmac_sign(key: &str, data: &str) -> String { // Random values // -pub fn get_random_64() -> Vec<u8> { - get_random_bytes::<64>().to_vec() -} - /// Return an array holding `N` random bytes. pub fn get_random_bytes<const N: usize>() -> [u8; N] { use ring::rand::{SecureRandom, SystemRandom}; diff --git a/src/db/models/send.rs b/src/db/models/send.rs index effc5dfcc22aaf1c0be69e98ac541ece3d38f960..49756125782fd91238c7944ed5a34dae9425387f 100644 --- a/src/db/models/send.rs +++ b/src/db/models/send.rs @@ -81,7 +81,7 @@ impl Send { if let Some(password) = password { self.password_iter = Some(PASSWORD_ITER); - let salt = crate::crypto::get_random_64(); + let salt = crate::crypto::get_random_bytes::<64>().to_vec(); let hash = crate::crypto::hash_password(password.as_bytes(), &salt, PASSWORD_ITER as u32); self.password_salt = Some(salt); self.password_hash = Some(hash); diff --git a/src/db/models/user.rs b/src/db/models/user.rs index 826e00fac434133a1214e5733a8c00072929adbb..68fb96f6e46ae7683b1c41db4de12eb218a8e7ad 100644 --- a/src/db/models/user.rs +++ b/src/db/models/user.rs @@ -93,7 +93,7 @@ impl User { email_new_token: None, password_hash: Vec::new(), - salt: crypto::get_random_64(), + salt: crypto::get_random_bytes::<64>().to_vec(), password_iterations: CONFIG.password_iterations(), security_stamp: crate::util::get_uuid(),