Подтвердить что ты не робот

Какая польза от Google CityHash, кроме альтернативы генерации строки hashcode?

Недавно Google выпустил http://code.google.com/p/cityhash/. Это вариант MurmurHash, http://sites.google.com/site/murmurhash/

Как уже упоминалось, он не может быть использован для криптографии, в котором все возможные интересные случаи использования его в качестве альтернативы существующему хешу?

Ищем алгоритмы, которые могут использовать эту хеш-реализацию, подобно http://www.partow.net/programming/hashfunctions/

4b9b3361

Ответ 1

MurmurHash (и, соответственно, CityHash) разработаны как универсальные, небезопасные хэши. Наиболее частое использование для них - это ключ в хэш-таблице, но также существуют другие приложения, такие как Bloom Filters.

Основными критериями для таких хэшей являются то, что они быстро генерируют, но хорошо распределяются, чтобы избежать горячих точек в хэш-таблицах и т.п. Первая часть исключает более медленные функции безопасного хэширования, а вторая (избегая горячих точек) исключает большинство тривиальных функций, таких как суммирование или xoring байтов вместе, что делает дизайн быстрого, но хорошо распределенного хэша довольно сложным.