#hash #digest #hashing #sha-256 #checksum #sha2-256

chksum-hash-sha2-256

An implementation of SHA-2 256 hash algorithm for batch and stream computation

2 releases

new 0.0.1 Apr 28, 2024
0.0.0 Dec 21, 2023

#22 in #sha256

Download history 327/week @ 2024-01-06 587/week @ 2024-01-13 366/week @ 2024-01-20 332/week @ 2024-01-27 1624/week @ 2024-02-03 2060/week @ 2024-02-10 2275/week @ 2024-02-17 2252/week @ 2024-02-24 2324/week @ 2024-03-02 2659/week @ 2024-03-09 2228/week @ 2024-03-16 2066/week @ 2024-03-23 426/week @ 2024-03-30 734/week @ 2024-04-06 600/week @ 2024-04-13 511/week @ 2024-04-20

2,361 downloads per month
Used in 6 crates (2 directly)

MIT license

58KB
1K SLoC

chksum-hash-sha2-256

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

An implementation of SHA-2 256 hash algorithm 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-sha2-256 = "0.0.1"

Alternatively, you can use the cargo add subcommand:

cargo add chksum-hash-sha2-256

Usage

Use the hash function for batch digest calculation.

use chksum_hash_sha2_256 as sha2_256;

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

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

use chksum_hash_sha2_256 as sha2_256;

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

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

License

This crate is licensed under the MIT License.

Dependencies

~0.3–0.8MB
~19K SLoC