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}