Miklix

Calculateur de code de hachage MurmurHash3F

Publié : 18 février 2025 à 00 h 31 min 26 s UTC

Calculateur de code de hachage qui utilise la fonction de hachage MurmurHash3F pour calculer un code de hachage basé sur une saisie de texte ou un téléchargement de fichier.

Cette page a été automatiquement traduite de l'anglais afin de la rendre accessible au plus grand nombre. Malheureusement, la traduction automatique n'est pas encore une technologie au point, des erreurs peuvent donc survenir. Si vous préférez, vous pouvez consulter la version originale en anglais ici :

MurmurHash3F Hash Code Calculator

MurmurHash3 est une fonction de hachage non cryptographique conçue par Austin Appleby en 2008. Elle est largement utilisée pour le hachage à usage général en raison de sa rapidité, de sa simplicité et de ses bonnes propriétés de distribution. Les fonctions MurmurHash sont particulièrement efficaces pour les structures de données basées sur le hachage telles que les tables de hachage, les filtres Bloom et les systèmes de déduplication de données.

La variante présentée sur cette page est la variante 3F, qui est optimisée pour les systèmes 64 bits. Il produit des codes de hachage de 128 bits (16 octets), généralement représentés sous la forme d'un nombre hexadécimal à 32 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é.


Calculer un nouveau code de hachage

Les données soumises ou les fichiers téléchargés via ce formulaire ne seront conservés sur le serveur que le temps nécessaire à la génération du code de hachage demandé. Il sera supprimé immédiatement avant que le résultat ne soit retourné à votre navigateur.

Données d'entrée :



Le texte soumis est codé en UTF-8. Étant donné que les fonctions de hachage fonctionnent sur des données binaires, le résultat sera différent de celui obtenu si le texte était dans un autre encodage. Si vous devez calculer un hachage d'un texte dans un encodage spécifique, vous devriez plutôt télécharger un fichier.



À propos de l'algorithme de hachage MurmurHash3F

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 vous préférez une explication mathématique complète et scientifiquement correcte, je suis sûr que vous pouvez la trouver ailleurs ;-)

Maintenant, imaginez que vous avez une grosse boîte de briques LEGO. Chaque fois que vous les disposez d'une manière spécifique, vous prenez une photo. Quelle que soit la taille ou la couleur de l'arrangement, l'appareil photo vous donne toujours une petite photo de taille fixe. Cette photo représente votre création LEGO, mais sous une forme compacte.

MurmurHash3 fait quelque chose de semblable avec les données. Il prend n'importe quel type de données (texte, nombres, fichiers) et les réduit à une petite « empreinte digitale » fixe ou à une valeur de hachage. Cette empreinte digitale aide les ordinateurs à identifier, trier et comparer rapidement les données sans avoir besoin de les examiner dans leur intégralité.

Une autre analogie serait comme faire cuire un gâteau et que MurmurHash3 est la recette pour transformer ce gâteau en un petit cupcake (le hasch). Ce serait un processus en trois étapes :

Étape 1 : Couper en morceaux (décomposer les données)

  • Tout d'abord, MurmurHash3 découpe vos données en morceaux égaux, comme si vous coupiez le gâteau en carrés égaux.

Étape 2 : Brassez comme un fou (mélangez les morceaux)

  • Chaque pièce passe par un processus de mélange sauvage :
    • Retourner : Comme retourner une crêpe, ça réorganise les morceaux.
    • Brasser : ajoute des ingrédients aléatoires (opérations mathématiques) pour mélanger les choses.
    • Écrasement : compresse les données ensemble pour s'assurer qu'aucun élément d'origine ne se démarque.

Étape 3 : Test de goût final (finalisation)

  • Après avoir mélangé tous les morceaux, MurmurHash3 leur donne une dernière agitation pour s'assurer que même la plus petite miette de changement dans les données d'origine changerait totalement la saveur (le hachage).

Partager sur BlueskyPartager sur FacebookPartager sur LinkedInPartager sur TumblrPartager sur XPartager sur LinkedInÉpingler sur Pinterest

Mikkel Bang Christensen

À propos de l'auteur

Mikkel Bang Christensen
Mikkel est le créateur et propriétaire de miklix.com. Il a plus de 20 ans d'expérience en tant que programmeur informatique/développeur de logiciels professionnel et est actuellement employé à temps plein pour une grande société informatique européenne. Lorsqu'il ne blogue pas, il consacre son temps libre à une vaste gamme d'intérêts, de passe-temps et d'activités, qui peuvent dans une certaine mesure se refléter dans la variété des sujets abordés sur ce site Web.