Messages in this thread | | | Date | Thu, 4 Dec 2014 16:11:47 +0800 | From | Herbert Xu <> | Subject | Where exactly will arch_fast_hash be used |
| |
Hi:
While working on rhashtable it came to me that this whole concept of arch_fast_hash is flawed. CRCs are linear functions so it's fairly easy for an attacker to identify collisions or at least eliminate a large amount of search space (e.g., controlling the last bit of the hash result is almost trivial, even when you add a random seed).
So what exactly are we going to use arch_fast_hash for? Presumably it's places where security is never goint to be an issue, right?
Even if security wasn't an issue, straight CRC32 has really poor lower-order bit distribution, which makes it a terrible choice for a hash table that simply uses the lower-order bits.
Cheers, -- Email: Herbert Xu <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
| |