#sha-2 #hashing #hash #digest #checksum

chksum-hash-sha2

SHA-2哈希算法的实现,用于批量和流计算

2个版本

0.0.1 2024年4月28日
0.0.0 2023年12月21日

#41 in #sha-2

Download history 417/week @ 2024-05-05 567/week @ 2024-05-12 529/week @ 2024-05-19 448/week @ 2024-05-26 641/week @ 2024-06-02 661/week @ 2024-06-09 560/week @ 2024-06-16 279/week @ 2024-06-23 423/week @ 2024-06-30 744/week @ 2024-07-07 462/week @ 2024-07-14 606/week @ 2024-07-21 696/week @ 2024-07-28 773/week @ 2024-08-04 800/week @ 2024-08-11 326/week @ 2024-08-18

2,600 每月下载量
4 个crate中使用 (2 个直接使用)

MIT 许可证

8KB

chksum-hash-sha2

GitHub Build docs.rs MSRV deps.rs unsafe forbidden LICENSE

SHA-2哈希算法的实现,用于批量和流计算。

配置

要使用此crate,请在代码的Cargo.toml文件的dependencies部分添加以下条目

[dependencies]
chksum-hash-sha2 = "0.0.1"

或者,您可以使用cargo add

cargo add chksum-hash-sha2

使用

使用hash函数进行批量摘要计算。

use chksum_hash_sha2::sha2_256;

let digest = sha2_256::hash(b"example data");
assert_eq!(
    digest.to_hex_lowercase(),
    "44752f37272e944fd2c913a35342eaccdd1aaf189bae50676b301ab213fc5061"
);

使用default函数创建用于流摘要计算的哈希实例。

use chksum_hash_sha2::sha2_512;

let digest = sha2_512::default()
    .update("example")
    .update(b"data")
    .update([0, 1, 2, 3])
    .digest();
assert_eq!(
    digest.to_hex_lowercase(),
    "57f35477757af6734892604de3846a97d2cc17cd37068373075e56a4843b3e9c83f9b435beae9fcf1da590e73e62fe20468f52ff13b095241fec77884086b090"
);

有关更多使用示例,请参阅docs.rs上的文档。

功能

Cargo功能用于启用或禁用特定的算法函数。

  • 224 启用SHA-2 224,通过sha2_224模块访问,
  • 256 启用SHA-2 256,通过sha2_256模块访问,
  • 384 启用SHA-2 384,通过sha2_384模块访问,
  • 512 启用SHA-2 512,通过sha2_512模块访问。

默认情况下,它们都启用。

要自定义您的配置,请在Cargo.toml文件中关闭默认功能,并仅启用您需要的那些。

[dependencies]
chksum-hash-sha2 = { version = "0.0.1", default-features = no, features = ["256", "512"] }

或者,您可以使用cargo add

cargo add chksum-hash-sha2 --no-default-features --features 256,512

许可证

此crate受MIT许可证许可。

依赖项

~175KB