#mac #message-authentication #tink

tink-mac

Rust 版 Google Tink 加密库的 MAC 功能

7 个版本

0.2.5 2023年3月14日
0.2.4 2022年3月25日
0.2.3 2022年1月3日
0.2.1 2021年10月8日
0.1.0 2021年1月21日

#1053 in 加密学

Download history 5883/week @ 2024-03-17 11192/week @ 2024-03-24 11891/week @ 2024-03-31 2633/week @ 2024-04-07 4152/week @ 2024-04-14 4315/week @ 2024-04-21 4825/week @ 2024-04-28 2221/week @ 2024-05-05 5125/week @ 2024-05-12 13471/week @ 2024-05-19 5810/week @ 2024-05-26 4991/week @ 2024-06-02 11281/week @ 2024-06-09 4282/week @ 2024-06-16 6675/week @ 2024-06-23 5514/week @ 2024-06-30

27,842 每月下载量
用于 5 个crate(3 个直接)

Apache-2.0

290KB
4.5K SLoC

Tink-Rust: 消息认证码

Docs MSRV

此crate提供消息认证码(MAC)功能,如上游 Tink 文档 中所述。

使用方法

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(())
}

许可证

Apache 许可证,版本 2.0

免责声明

这不是一个官方支持的 Google 产品。

依赖项

~3–5.5MB
~95K SLoC