use base64::Engine;
use base64::engine::general_purpose;
pub fn encrypt_byte(input: &[u8]) -> Vec<u8> {
let digest = md5::compute(input);
digest.to_vec()
}
pub fn encrypt_hex(input: &[u8]) -> String {
let digest = md5::compute(input);
format!("{digest:x}")
}
pub fn encrypt_base64(input: &[u8]) -> String {
let digest = encrypt_byte(input);
general_purpose::STANDARD.encode(digest)
}
#[test]
fn tests() {
let data = encrypt_byte(b"1");
let md5 = hex::decode("c4ca4238a0b923820dcc509a6f75849b").unwrap();
assert_eq!(md5, data);
let data = encrypt_hex(b"1");
assert_eq!("c4ca4238a0b923820dcc509a6f75849b", data);
let data = encrypt_base64(b"1");
let md5 = hex::decode("c4ca4238a0b923820dcc509a6f75849b").unwrap();
let base = general_purpose::STANDARD.encode(&md5);
assert_eq!(base, data);
}