komihash
wyhash
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
komihash
- Streamed Hashing Added to Komihash 4.6. Very Fast Hash Function (in C), competitor to xxhash, wyhash. Java port available.
- komihash 4.4 released - a very fast hash function (competitor to xxhash, wyhash), C
- Komirand (64-bit C) - Simple, reliable, self-starting, fast (0.73 cycles/byte) PRNG with 2^64 period. Spin-off from Komihash.
- Komihash – Fast Hash Function
- Very Fast Non-Cryptographic Hash Function (competitor to wyhash, xxhash), C
- Komihash – Very Fast Hash Function (competitor to wyhash, xxhash)
wyhash
- Wyhash: The fastest quality hash function
-
What hash function you use for hash maps / hash tables?
I recently switched to wyhash as it seems to have a good combination of speed and stability.
-
Are there any weaker hashes than MD5, but still randomly distributed?
wyhash is a decent option for if you don't need a cryptographical quality hash
-
Hacker News top posts: Mar 15, 2021
New Bare Hash Map: 2X-3X Speedup over SOTA\ (32 comments)
-
New Bare Hash Map: 2X-3X Speedup over SOTA
I feel like you’d want something a bit safer than “we don’t store the keys and just rely on the hash to be really good” [1], putting “please do not use this for serious tasks” in a comment embedded in the header file isn’t a clear enough warning.
It’s not clear to me that that probability of collision assumptions hold. It’s basically assuming that the hashing is perfect and distributes any inputs to the full 64-bit space with uniform probability. That’s the usual hash map / randomized algorithm hope, but does BigCrush or similar avalanche testing really prove that? (Presumably not, otherwise there wouldn’t be image attacks for things like md5).
[1] https://github.com/wangyi-fudan/wyhash/blob/d2a305811972f391...
- wyhash and wyrand are a non-cryptographic 64-bit hash function and PRNG respectively
What are some alternatives?
john - John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
smhasher - Hash function quality and speed tests
prvhash - PRVHASH - Pseudo-Random-Value Hash. Hash functions, PRNG with unlimited period, randomness extractor, and a glimpse into abyss. (inline C/C++) (Codename Gradilac/Градилак)
aHash - aHash is a non-cryptographic hashing algorithm that uses the AES hardware instruction
xxHash - Extremely fast non-cryptographic hash algorithm
meow_hash - Official version of the Meow hash, an extremely fast level 1 hash
ZedmeeHash - Strong, fast, simple, non-cryptographic hash function
leocad - A CAD application for creating virtual LEGO models
JohnTheRipper - John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs [Moved to: https://github.com/openwall/john]
smhasher - Automatically exported from code.google.com/p/smhasher
pthash - Fast and compact minimal perfect hash functions in C++.
Mersenne-Twister-in-Python - A Mersenne Twister Random Number Generator