Calculateur de code de hachage Fowler-Noll-Vo FNV1-32
Publié : 18 février 2025 à 00 h 18 min 14 s UTC
Dernière mise à jour : 12 janvier 2026 à 13 h 29 min 48 s UTC
Fowler-Noll-Vo FNV1-32 Hash Code Calculator
La fonction de hachage 32 bits FNV-1 fait partie de la famille de fonctions de hachage Fowler–Noll–Vo (FNV), conçue pour un hachage rapide tout en maintenant une bonne distribution des valeurs de hachage. Il est couramment utilisé dans des applications telles que les tables de hachage, les sommes de contrôle et les recherches de données. Il produit un code de hachage de 32 bits (4 octets), souvent représenté par un nombre hexadécimal de 8 chiffres.
Divulgation complète : je n'ai pas écrit l'implémentation spécifique de la fonction de hachage utilisée sur cette page. Il s'agit d'une fonction standard incluse avec le langage de programmation PHP. J'ai seulement créé l'interface Web pour la rendre accessible au public ici pour plus de commodité.
À propos de l’algorithme de hachage FNV-1 FNV-1 à 32 bits
Je ne suis pas mathématicien, mais je vais essayer d’expliquer cette fonction de hachage en utilisant une analogie que mes collègues non-mathématiciens peuvent comprendre. Si tu préfères une explication scientifiquement correcte et mathématique effrayante, je suis sûr que tu peux la trouver ailleurs;-)
D’abord, considérons l’algorithme FNV-1 comme une recette pour préparer un smoothie spécial. Chaque ingrédient que vous ajoutez (comme des fruits, du lait ou du miel) représente une donnée — comme des lettres, des chiffres, ou même un fichier entier.
Le but est maintenant de mélanger ces ingrédients de façon très spécifique pour que même le moindre changement dans la recette (comme ajouter un bleuet supplémentaire) donne un goût complètement différent au smoothie. C’est comme ça que fonctionnent les fonctions de hachage : elles créent une « saveur » (ou une valeur de hachage) unique pour chaque ensemble unique d’ingrédients (ou données d’entrée).
La façon dont l’algorithme FNV-1 procéde est un processus en plusieurs étapes :
Étape 1 : Commencez avec une base de base (décalage)
Pense à ça comme si tu versais une base spéciale de smoothie dans ton mélangeur. Cette base est toujours la même, peu importe les ingrédients que vous ajoutez. Dans FNV-1, on appelle cela la « base de décalage » – juste un chiffre de départ sophistiqué.
Étape 2 : Ajouter les ingrédients un par un (traitement des données)
Maintenant, vous commencez à ajouter vos ingrédients, un à la fois – disons une fraise, puis une banane, puis un peu de miel. Chacun de ces éléments représente un octet de données.
Étape 3 : Fusionner avec un multiplicateur secret (le FNV Prime)
Après avoir ajouté chaque ingrédient, tu appuies sur le bouton de mélange, mais voici la particularité : le blender multiplie tout par un « nombre magique » secret appelé le prime FNV. Ça aide vraiment à varier les choses.
Étape 4 : Ajoutez une touche de magie (Opération XOR)
Avant d’ajouter l’ingrédient suivant, on saupoudre un peu de poussière magique (c’est l’opération XOR). C’est comme inverser la saveur de façon inattendue, s’assurant que même de petits changements font une grande différence.
Étape 5 : Répétez jusqu’à la fin
Vous continuez à mixer et à saupoudrer de la magie après chaque nouvel ingrédient jusqu’à ce que vous ayez tout traité.
Étape 6 : Smoothie final (Valeur de hachage)
Quand tu as fini, tu verses le smoothie. Le goût final (la valeur du hash) est unique à cette combinaison exacte d’ingrédients. Si vous aviez ajouté ne serait-ce qu’un bleuet de plus, le goût serait complètement différent.
La version présentée ici est la version originale FNV-1 32 bits. Il existe aussi une version améliorée FNV-1a 32 bits : Link
Lectures complémentaires
Si vous avez apprécié cet article, vous aimerez peut-être aussi ces suggestions :
- Calculateur de code de hachage Whirlpool
- Calculateur de code de hachage CRC-32C
- Calculateur de code de hachage XXH3-64
