#hash #murmur3 #digest #checksum

yanked hash4lf

Fast hashing for large files

1 unstable release

0.1.0 Aug 14, 2023

#9 in #murmur3

MIT license

145KB
141 lines

hash4lf

Fast hashing for large files

A rewritten version of imohash in Rust.

Usage

Add this to your Cargo.toml:

[dependencies]
hash4lf = "0.1"

then

use hash4lf::Hasher;

// Creates a new hasher using default sample parameters
let hasher = Hasher::new();
//or creates with custom sample parameters
let hasher = Hasher::with_sample_size_and_threshold(3, 45);

// Hashes a byte slice
let hash_value = hasher.sum("hello".as_bytes()).unwrap();

// Hashes a file
let hash_value = hasher.sum_file("samples/system.evtx").unwrap();

Algorithm

Consult the documentation for more information.

Misuses

Because hash4lf only reads a small portion of a file's data, it is not suitable for:

  • file verification or integrity monitoring
  • cases where fixed-size files are manipulated
  • anything cryptographic

The original project created by Jim Kalafut, check out https://github.com/kalafut/imohash

License: MIT

Dependencies