Expand description
§RustCrypto: bash hash
Pure Rust implementation of the bash hash function specified in STB 34.101.77-2020.
§Examples
use bash_hash::{BashHash256, Digest};
use hex_literal::hex;
let mut hasher = BashHash256::new();
hasher.update(b"hello world");
let hash = hasher.finalize();
assert_eq!(hash, hex!("2FC08EEC942378C0F8A6E5F1890D907B706BE393B0386E20A73D4D17A46BBD10"));
// Hex-encode hash using https://docs.rs/base16ct
let hex_hash = base16ct::upper::encode_string(&hash);
assert_eq!(hex_hash, "2FC08EEC942378C0F8A6E5F1890D907B706BE393B0386E20A73D4D17A46BBD10");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.
Re-exports§
pub use digest;
Modules§
- block_
api - Block-level types
Structs§
- Bash
Hash bash-hashhasher state generic over output size.
Traits§
- Digest
- Convenience wrapper trait covering functionality of cryptographic hash functions with fixed output size.
- Output
Size - Trait implemented for output sizes supported by
bash-hash.
Type Aliases§
- Bash
Hash256 bash-hash-256hasher state.- Bash
Hash384 bash-hash-384hasher state.- Bash
Hash512 bash-hash-512hasher state.