hiqlite 0.13.0

Hiqlite - highly-available, embeddable, raft-based SQLite + cache
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::{dashboard, Error};
use argon2::password_hash::rand_core::OsRng;
use argon2::password_hash::SaltString;
use argon2::PasswordHasher;
use cryptr::utils::b64_encode;
use tokio::task;

pub async fn hash_password_b64(password: String) -> Result<String, Error> {
    task::spawn_blocking(move || {
        let salt = SaltString::generate(&mut OsRng);
        let s = dashboard::password::build_hasher()
            .hash_password(password.as_bytes(), &salt)?
            .to_string();

        Ok::<String, Error>(b64_encode(s.as_bytes()))
    })
    .await?
}