1 unstable release
0.1.0 | Jun 6, 2023 |
---|
#2546 in Algorithms
265KB
316 lines
AutobahnHash
A pure Rust implementation of HighwayHash.
A few highlights:
- No
unsafe
- Fuzzed against the reference implementation
- Minimal crate with few required dependencies
- Portable to any SIMD instruction set (and reasonably fast without SIMD)
This crate requires the portable_simd
nightly feature.
Benchmarks
The following benchmarks were done on an Intel i7-9750H, to give an idea of the performance profile. These two benchmarks can help predict best- and worst-case performance.
Slices
The HighwayHash algorithm performs best on long slices of data:
Non-slice data
Worst-case performance can be predicted with non-slice data: struct Data(u8, u16, u32, u64);
License
AutobahnHash is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.
Dependencies
~1.5MB
~39K SLoC