xxHash
xxHash 是 Yann Collet 设计的极快非加密哈希,在现代 CPU 上接近内存带宽上限,用于 LZ4/Zstd 压缩。
用途
提供接近 RAM 带宽的极速非加密哈希,用于高性能校验与分片。
机制
XXH32/XXH64 维护 4 个累加器,每 16 字节一轮:acc = acc ⊕ (input × prime);acc = rotl(acc, 13) × prime。最后合并累加器并 avalanche。XXH3 用 AES 硬件加速更快。
用例
- Zstd/LZ4 压缩校验
- Rust xxHash crate 哈希库
- 高频哈希表
- 游戏引擎内部
示例
- 输入
hello输出0x391c7cb6XXH32
常见错误
- Using xxHash for cryptographic authentication
- xxHash is not cryptographic; use HMAC