[][src]Crate ahash

aHash

This hashing algorithm is intended to be a high performance, (hardware specific), keyed hash function. This can be seen as a DOS resistant alternative to FxHash, or a fast equivalent to SipHash. It provides a high speed hash algorithm, but where the result is not predictable without knowing a Key. This allows it to be used in a HashMap without allowing for the possibility that an malicious user can induce a collision.

How aHash works

aHash uses the hardware AES instruction on x86 processors to provide a keyed hash function. It uses two rounds of AES per hash. So it should not be considered cryptographically secure.

Structs

ABuildHasher

Provides a Hasher factory. This is typically used (e.g. by [HashMap]) to create AHashers in order to hash the keys of the map. See build_hasher below.

AHashMap

A HashMap using ABuildHasher to hash the items. Requires the std feature to be enabled.

AHashSet

A HashSet using ABuildHasher to hash the items. Requires the std feature to be enabled.

AHasher

A Hasher for hashing an arbitrary stream of bytes.