Claude Found Seed-indpendent collisions in most popular hash functions An analysis using Anthropic's Claude Fable found that most popular non-cryptographic hash functions from the SMhasher project — including xxHash, komihash, a5hash, HighwayHash, SpookyHash, aHash, and t1ha2 — have inputs on which they collide at least 20 bits below expectation, and the tool also found flooding-grade key-free multicollisions for many of them. The author, Thomas Ahle, reported that his ChainHash, built on work with Jakob Tejs on Fast Polynomial Evaluation, achieved the highest throughput among all tested hashes on Intel Xeon and second highest on Apple M2 Pro, and that Fable found mistakes in some published proofs while verifying others in Lean. All findings were disclosed upstream to maintainers of xxHash, komihash, MuseAir, and foldhash before publication, with maintainers arguing only true multicollision attacks are worth fixing. Contents Hash functions https://en.wikipedia.org/wiki/Hash function map data of arbitrary length to fixed-size values. The goal is to ensure that distinct inputs map to distinct outputs , except with very small probability over the randomness of a secret key used by the hash function. This property https://en.wikipedia.org/wiki/Universal hashing ensures we can build fast hash tables where every data point doesn’t collide in the same bucket. 1 note-bucket-bits Hashing needs to be fast. xxHash https://github.com/cyan4973/xxhash boasts 60 GB/s, or basically as fast as you can read memory. Such bulk hashing is useful for file synchronisation or data integrity checking. Many popular hashes like komihash, a5hash, HighwayHash, SpookyHash, aHash , and t1ha2 are willing to trade quality, at least for adversarial inputs, for more speed. This used to be fine. Many use cases of hashes are low risk, and it’s not worth it for attackers to do expensive cryptanalysis for inputs that make the hashes collide much more often than average. Still, most hashes try to be somewhat robust, to prevent accidentally quadratic slowdowns in algorithms and DoS attacks. The best hashes give proofs that any pair of inputs collide with low probability. This is something unique in a world of cryptography that nobody can prove is actually secure. Let’s say a hash is b-bit universal if inputs of length L collide with probability at most L · 2