Distribution of hash values I was wondering if the uniform distribution of hash values is a generally required criteria for cryptographic hash functions.

The english wikipedia article only mentions four main properties. But it looks like the commonly used algorithms show a nearly perfect uniform distribution. So my question(s) would be:


Are hash functions supposed to have uniform distributed values?
(If so) Is it an explicit requirement or an implication of the second and last property mentioned by wikipedia (irreversibility + collision resistance)?
Are there any hash functions, currently used, that do not show such distribution?
Is there a scientific paper or article addressing this issue? (Unfortunately I was unable to find one)
The idea of a hash function is the idea of a random Oracle. For any given input, this Oracle should return a truly uniformly random output. This is ideal of how hash functions work, so any hash function that isn't uniformly random is not behaving the same way as a random Oracle. So yes, hash functions should have uniformly distributed values.

I don't believe it's necessarily an explicit requirement to be uniform, but not being uniform would certainly weaken the strength of the hash. For example, if the hash was a 'normal' distribution, certain outputs would be far more common than other. We could get collisions far easier then.

I'm unfamiliar of any cryptographic hashes attempting to reach a non-uniform distribution as I imagine they would be more vulnerable to collisions and preimage attacks. If you were so inclined, you could hash the values with a known uniform distribution use the output in a non-uniform distribution function.