Aller au contenu
uencoder

xxHash

xxHash est le hachage non cryptographique extrêmement rapide conçu par Yann Collet, approchant les limites de la bande passante mémoire sur les CPU modernes, utilisé avec la compression LZ4/Zstd.

Objectif

Fournir un hachage non cryptographique ultra-rapide de classe bande passante RAM pour les sommes de contrôle et le partitionnement haute performance.

Mécanisme

XXH32/XXH64 maintiennent 4 accumulateurs, un tour par 16 octets : acc = acc ⊕ (input × prime) ; acc = rotl(acc, 13) × prime. Les accumulateurs sont fusionnés et avalanche à la fin. XXH3 utilise l'accélération matérielle AES pour encore plus de vitesse.

Cas d’usage

  • Vérification de compression Zstd/LZ4
  • Crate xxHash de Rust
  • Tables de hachage haute fréquence
  • Internes de moteurs de jeu

Exemples

  • entrée
    hello
    Output
    0x391c7cb6

    XXH32

Erreurs courantes

Using xxHash for cryptographic authentication
xxHash is not cryptographic; use HMAC

Termes associés

Outils associés

References