use argon2::{Argon2, PasswordHash, PasswordHasher, PasswordVerifier};
pub struct CryptoHelper;
impl CryptoHelper {
pub fn hash_password(password: &str) -> Result<String, argon2::password_hash::Error> {
let argon2 = Argon2::default();
Ok(argon2.hash_password(password.as_bytes())?.to_string())
}
pub fn verify_password(hash: &str, password: &str) -> Result<bool, argon2::password_hash::Error> {
let parsed = PasswordHash::new(hash)?;
Ok(Argon2::default().verify_password(password.as_bytes(), &parsed).is_ok())
}
pub fn random_token(len: usize) -> String {
crate::utils::data_helpers::DataHelpers::create_token(len)
}
}