Générateur de hachage FNV
Calculez des hachages FNV-1 ou FNV-1a en 32 ou 64 bits à partir de n'importe quel texte.
Comment utiliser Générateur de hachage FNV
- Saisissez ou collez votre texte dans le champ.
- Choisissez la variante — FNV-1a est généralement recommandée.
- Le hachage s'affiche au fur et à mesure ; cliquez sur Copier pour le récupérer.
À propos de Générateur de hachage FNV
FNV — Fowler–Noll–Vo, nommé d'après Glenn Fowler, Landon Curt Noll et Phong Vo — est l'un des grands petits algorithmes. L'ensemble tient en une boucle sur les octets qui ne fait rien d'autre qu'une multiplication par un nombre premier fixe suivie d'un XOR. Pas de tables, pas de tours, pas de tampons : il tient en quelques lignes dans n'importe quel langage, s'exécute partout, et il est assez rapide pour que personne ne songe à le profiler. C'est pourquoi on le retrouve dans les tables de hachage, les tables de symboles, les caches et les interpréteurs, un peu partout.
Les deux variantes se ressemblent presque trait pour trait et la différence est facile à manquer. FNV-1a ne diffère de FNV-1 que par l'ordre du XOR et de la multiplication — c'est là tout le changement. Il se trouve que cela compte : effectuer le XOR en premier donne une bien meilleure distribution, en particulier sur les entrées courtes et sur celles qui ne diffèrent que par leur dernier octet — exactement la situation que rencontre une table de hachage avec des clés comme user_1, user_2, user_3. C'est pourquoi FNV-1a est la variante généralement recommandée, et pourquoi elle est ici la valeur par défaut. Ne choisissez FNV-1 que si vous devez correspondre à un système existant qui l'utilise déjà.
La taille est l'autre choix à faire. Les variantes 32 bits donnent 8 caractères hexadécimaux ; les variantes 64 bits en donnent 16. Plus large ne veut pas dire « plus sécurisé » — cela signifie simplement moins de collisions accidentelles lorsque vous hachez un grand nombre de clés, si bien que le 64 bits vaut la peine dès que le nombre de clés atteint les millions. Aucune variante de FNV n'est cryptographique. Elles sont conçues pour la vitesse et la dispersion, elles ne résistent à rien, et fabriquer deux chaînes ayant le même hachage FNV est immédiat. Utilisez-les pour des recherches et une répartition en compartiments ; utilisez SHA-256 lorsque la réponse doit tenir face à quelqu'un qui souhaite qu'elle échoue.
Questions fréquentes
Quelle est la différence entre FNV-1 et FNV-1a ?
Seul l'ordre de deux opérations change : FNV-1 multiplie puis fait un XOR, FNV-1a fait un XOR puis multiplie. Cette simple inversion donne à FNV-1a une meilleure distribution, ce qui explique pourquoi elle est normalement recommandée.
Dois-je utiliser la variante 32 bits ou 64 bits ?
Le 32 bits (8 caractères hexadécimaux) convient aux tables de hachage ordinaires. Passez au 64 bits (16 caractères hexadécimaux) lorsque vous hachez des millions de clés et que vous voulez que les collisions accidentelles restent rares.
FNV est-il sécurisé ?
Non. FNV est un hachage non cryptographique conçu pour la vitesse. Il ne doit jamais être utilisé pour des mots de passe, des signatures ou l'intégrité face à un attaquant — des collisions peuvent être construites délibérément avec très peu d'effort.
À quoi FNV est-il réellement utile ?
Aux tables de hachage, dictionnaires, tables de symboles, clés de cache, répartition et compartimentage — partout où vous avez besoin d'un nombre rapide et bien réparti à partir d'une chaîne, et où personne ne cherche à vous tromper.
Mon texte est-il envoyé quelque part ?
Votre texte est envoyé à notre serveur pour être haché, car les navigateurs ne peuvent pas calculer FNV. Il est haché puis immédiatement supprimé — jamais journalisé, jamais stocké.

