Thanks to visit codestin.com
Credit goes to lib.rs

#hash

no-std jh

Pure Rust implementation of the JH cryptographic hash function

3 releases (breaking)

Uses new Rust 2024

0.2.0-rc.0 Jan 4, 2026
0.1.0 Jun 11, 2023
0.0.0 Dec 16, 2016

#2976 in Cryptography

Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

19,394 downloads per month
Used in 6 crates

MIT/Apache

800KB
364 lines

RustCrypto: JH

crate Docs Apache2/MIT licensed Rust Version Project Chat Build Status

Pure Rust implementation of the JH cryptographic hash function.

There are 4 standard versions of the JH hash function:

  • JH-224
  • JH-256
  • JH-384
  • JH-512

Examples

use jh::{Digest, Jh256};
use hex_literal::hex;

let mut hasher = Jh256::new();
hasher.update(b"hello");
let hash = hasher.finalize();

assert_eq!(hash, hex!("94fd3f4c564957c6754265676bf8b244c707d3ffb294e18af1f2e4f9b8306089"));

// Hex-encode hash using https://docs.rs/base16ct
let hex_hash = base16ct::lower::encode_string(&hash);
assert_eq!(hex_hash, "94fd3f4c564957c6754265676bf8b244c707d3ffb294e18af1f2e4f9b8306089");

Also, see the examples section in the RustCrypto/hashes readme.

License

The crate is licensed under either of:

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies