hash4lf

Crates.iohash4lf
lib.rshash4lf
version0.1.0
sourcesrc
created_at2023-08-14 12:33:38.165802
updated_at2023-08-14 12:33:38.165802
descriptionFast hashing for large files
homepage
repositoryhttps://github.com/hiql/hash4lf
max_upload_size
id944125
size1,127,812
hiql (hiql)

documentation

https://docs.rs/hash4lf

README

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

Commit count: 0

cargo fmt