8 releases
0.3.0 | Nov 28, 2024 |
---|---|
0.2.5 | Mar 14, 2023 |
0.2.4 | Mar 25, 2022 |
0.2.3 | Jan 3, 2022 |
0.1.0 | Jan 21, 2021 |
#1162 in Cryptography
83,390 downloads per month
Used in 5 crates
(3 directly)
285KB
4.5K
SLoC
Tink-Rust: Message Authentication Code
This crate provides message authentication code (MAC) functionality, as described in the upstream Tink documentation.
Usage
fn main() -> Result<(), Box<dyn Error>> {
tink_mac::init();
let kh = tink_core::keyset::Handle::new(&tink_mac::hmac_sha256_tag256_key_template())?;
let m = tink_mac::new(&kh)?;
let pt = b"this data needs to be MACed";
let mac = m.compute_mac(pt)?;
println!("'{}' => {}", String::from_utf8_lossy(pt), hex::encode(&mac));
assert!(m.verify_mac(&mac, b"this data needs to be MACed").is_ok());
println!("MAC verification succeeded.");
Ok(())
}
License
Disclaimer
This is not an officially supported Google product.
Dependencies
~1.4–3.5MB
~51K SLoC