#hashing #hash #digest #checksum

chksum-hash

An implementation of hash algorithms for batch and stream computation

8 unstable releases (3 breaking)

0.5.0 Dec 21, 2023
0.4.3 Aug 21, 2023
0.4.0 Jul 25, 2023
0.3.0 Jun 1, 2023
0.1.0-rc3 Mar 2, 2022

#833 in Algorithms

Download history 16/week @ 2023-12-22 24/week @ 2023-12-29 272/week @ 2024-01-05 610/week @ 2024-01-12 330/week @ 2024-01-19 383/week @ 2024-01-26 1315/week @ 2024-02-02 2511/week @ 2024-02-09 2125/week @ 2024-02-16 2391/week @ 2024-02-23 2337/week @ 2024-03-01 2634/week @ 2024-03-08 2544/week @ 2024-03-15 2489/week @ 2024-03-22 366/week @ 2024-03-29 744/week @ 2024-04-05

6,756 downloads per month
Used in 8 crates (3 directly)

MIT license

9KB

chksum-hash

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

An implementation of hash algorithms for batch and stream computation.

Setup

To use this crate, add the following entry to your Cargo.toml file in the dependencies section:

[dependencies]
chksum-hash = "0.5.0"

Alternatively, you can use the cargo add subcommand:

cargo add chksum-hash

Usage

Use the hash function for batch digest calculation.

use chksum_hash::md5;

let digest = md5::hash(b"example data");
assert_eq!(
    digest.to_hex_lowercase(),
    "5c71dbb287630d65ca93764c34d9aa0d"
);

Use default function to create hash instance for stream digest calculation.

use chksum_hash::sha2_384;

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

For more usage examples, refer to the documentation available at docs.rs.

Hash Algorithms

This crate provides implementations for the following hash algorithms:

  • MD5
  • SHA-1
  • SHA-2
    • SHA-2 224
    • SHA-2 256
    • SHA-2 384
    • SHA-2 512

License

This crate is licensed under the MIT License.

Dependencies

~190KB