#消息认证 #sha-1 #hmac #哈希 #哈希算法 #包装器 #rust-crypto

hmac-sha1

简单包装RustCrypto hmac和sha1包,以实现简单的HMAC-SHA1生成

5个版本

0.2.2 2023年12月8日
0.2.1 2023年10月22日
0.1.3 2016年9月24日
0.1.2 2016年9月24日
0.1.1 2016年9月21日

#108算法

Download history 14350/week @ 2024-04-23 9633/week @ 2024-04-30 11502/week @ 2024-05-07 14942/week @ 2024-05-14 11296/week @ 2024-05-21 11178/week @ 2024-05-28 12686/week @ 2024-06-04 12638/week @ 2024-06-11 12644/week @ 2024-06-18 12085/week @ 2024-06-25 13388/week @ 2024-07-02 13944/week @ 2024-07-09 13383/week @ 2024-07-16 12071/week @ 2024-07-23 13093/week @ 2024-07-30 14493/week @ 2024-08-06

每月下载量 54,669
63 包中使用(19 个直接使用)

BSD-3-Clause

7KB
70

Rust-HMAC-SHA1

crates.io version

简单包装RustCrypto hmacsha1 包,以实现简单的 HMAC-SHA1 生成。

功能说明

由于该包现在是RustCrypto的薄包装,请注意,该包可以用以下代码替换

use sha1::Sha1;
use hmac::{Hmac, Mac};

pub fn main() {
    ...

    // Create the hasher with the key. We can use expect for Hmac algorithms as they allow arbitrary key sizes.
    let mut hasher: Hmac<Sha1> = Mac::new_from_slice(key) .expect("HMAC algoritms can take keys of any size");

    // hash the message
    hasher.update(message);

    // finalize the hash and convert to a static array
    let hmac: [u8;20] = hasher.finalize().into_bytes().into()

    ...
}

使用方法

要导入rust-hmac-sha1,请将以下内容添加到您的Cargo.toml中

[dependencies]
hmac-sha1 = "^0.2"

要使用rust-hmac-sha1,只需使用提供的单个函数即可

let hmac_digest: [u8; hmac_sha1::SHA1_DIGEST_BYTES] = hmac_sha1::hmac_sha1(key, message);

贡献

欢迎任何贡献。

这是一个学习经验——0.1.x版本中包含了一个仅从SHA1哈希器实现的hmac-sha1实现。

许可协议

本包采用BSD 3-Clause许可协议。

本包还依赖于RustCrypto项目来提供底层的加密实现。这些包采用MIT和Apache-2.0的双许可协议。

依赖关系

~475KB