df_crypto/
hmac.rs

1use hmac::{Hmac, Mac};
2use sha2::Sha256;
3
4type HmacSha256 = Hmac<Sha256>;
5
6/// 字符串
7pub fn str_to_hmacsha256(key: &str, input: &str) -> String {
8    let mut mac = HmacSha256::new_from_slice(key.as_bytes()).expect("HMAC can take key of any size");
9    mac.update(input.as_bytes());
10    let result = mac.finalize();
11    let code_bytes = result.into_bytes();
12    let contents: String = code_bytes.iter().map(|&c| format!("{:x}",c)).collect();
13    format!("{:?}", contents)
14}