Sign up method.
[recipes.git] / backend / src / hash.rs
1 use std::{string::String, env::consts::OS};
2
3 use argon2::{
4 password_hash::{
5 Error,
6 rand_core::OsRng,
7 PasswordHash, PasswordHasher, PasswordVerifier, SaltString
8 },
9 Argon2
10 };
11
12 pub fn hash(password: &str) -> Result<String, Box<dyn std::error::Error>> {
13 let salt = SaltString::generate(&mut OsRng);
14 let argon2 = Argon2::default();
15 argon2.hash_password(password.as_bytes(), &salt).map(|h| h.to_string()).map_err(|e| e.into())
16 }