First you need to decide if you want fast, insecure hash functions or slow, reliable ones.
Of these, the best at present:
- Fast: CRC32 on SSE4.2 / armv7 HW, Murmur3, CityHash, FNV
- Safety: SHA-3 (Keccak), SHA-2, BLAKE2
See https://code.google.com/p/smhasher/w/list for a framework to test some of the popular ones.
[Edit note: previous had bcrypt, scrypt as safe + slow hash functions, but they are only password hash functions]
source share