Это одна из причин, почему
xxHash стал одной из самых быстрых некриптографических хеш-функций из когда-либо созданных.
Пять операций:
- две операции умножения;
- три операции XOR.
// финальный шаг avalanche (лавинный эффект)
// перемешивает оставшиеся биты, чтобы небольшие изменения
// распространялись повсюду
static uint32_t avalanche(uint32_t h)
{
h ^= h >> 15;
h *= 0x2c1b3c6d;
h ^= h >> 12;
h *= 0x297a2d39;
h ^= h >> 15;
return h;
}
// помогает равномерно распределять близкие значения хеша
Измените всего один бит во входных данных — и почти каждый бит в выходном хеше изменится.
@Cpportal
Обсуждение 0
Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.
Обсудить в Telegram