Skip to main content

fur_cli/security/
crypto.rs

1use aesus::{
2    encrypt_bytes,
3    decrypt_bytes,
4    generate_passphrase,
5    passphrase_entropy
6};
7
8pub fn encrypt(data: &[u8], password: &str) -> Result<Vec<u8>, String> {
9
10    encrypt_bytes(data, password)
11        .map_err(|e| e.to_string())
12}
13
14pub fn decrypt(data: &[u8], password: &str) -> Result<Vec<u8>, String> {
15
16    decrypt_bytes(data, password)
17        .map_err(|e| e.to_string())
18}
19
20
21pub fn generate_password(words: usize) -> (String, f64) {
22
23    let pass = generate_passphrase(words);
24
25    let entropy = passphrase_entropy(words);
26
27    (pass, entropy)
28}