Générateur de hachage MURMUR3C

Générateur murmur3c hash d'une chaîne

MURMUR3C hash

Cet outil en ligne vous permet de générer le hachage murmur3c de n'importe quelle chaîne.

MURMUR3C fait 32 caractères

Cet outil vous a-t-il été utile ?

Note moyenne : 4.8/5 basée sur 8 votes

Soutenez notre travail

Algorithmes de hachage disponibles

MD2 Hash, MD4 Hash, MD5 Hash, SHA1 Hash, SHA224 Hash, SHA256 Hash, SHA384 Hash, SHA512/224 Hash, SHA512/256 Hash, SHA512 Hash, SHA3-224 Hash, SHA3-256 Hash, SHA3-384 Hash, SHA3-512 Hash, RIPEMD128 Hash, RIPEMD160 Hash, RIPEMD256 Hash, RIPEMD320 Hash, WHIRLPOOL Hash, TIGER128,3 Hash, TIGER160,3 Hash, TIGER192,3 Hash, TIGER128,4 Hash, TIGER160,4 Hash, TIGER192,4 Hash, SNEFRU Hash, SNEFRU256 Hash, GOST Hash, GOST-CRYPTO Hash, ADLER32 Hash, CRC32 Hash, CRC32B Hash, CRC32C Hash, FNV132 Hash, FNV1A32 Hash, FNV164 Hash, FNV1A64 Hash, JOAAT Hash, MURMUR3A Hash, MURMUR3C Hash, MURMUR3F Hash, XXH32 Hash, XXH64 Hash, XXH3 Hash, XXH128 Hash, HAVAL128,3 Hash, HAVAL160,3 Hash, HAVAL192,3 Hash, HAVAL224,3 Hash, HAVAL256,3 Hash, HAVAL128,4 Hash, HAVAL160,4 Hash, HAVAL192,4 Hash, HAVAL224,4 Hash, HAVAL256,4 Hash, HAVAL128,5 Hash, HAVAL160,5 Hash, HAVAL192,5 Hash, HAVAL224,5 Hash, HAVAL256,5 Hash,

Qu'est-ce que Murmur3C ?

Murmur3C est la version 128 bits de l'algorithme MurmurHash3. Alors que Murmur3A est conçu pour des valeurs de hachage de 32 bits, Murmur3C produit un condensé de 128 bits. Il est spécialement conçu pour traiter des ensembles de données plus volumineux et offrir un espace de hachage nettement plus grand, ce qui est essentiel pour les applications où la probabilité de collisions doit être maintenue à un niveau extrêmement bas, même lorsqu'il s'agit de milliards de clés. À l'instar de son homologue 32 bits, il s'agit d'une fonction de hachage non cryptographique optimisée pour les tables de hachage hautes performances.

Comment fonctionne le hachage Murmur3C ?

Murmur3C adapte la logique de mélange de la famille MurmurHash3 pour prendre en charge des états internes plus volumineux :

  1. Initialisation : il utilise une graine de 32 bits, qui est ensuite étendue à l'état interne de 128 bits.
  2. Traitement 128 bits : Les données d'entrée sont traitées par blocs de 16 octets (128 bits). Elle utilise une combinaison de multiplications 64 bits, de rotations de bits et d'opérations XOR pour mélanger les données.
  3. Gestion de l'état : elle gère quatre registres de 32 bits (totalisant 128 bits) qui sont mis à jour indépendamment au fur et à mesure que les données sont consommées.
  4. Finalisation : L'étape de finalisation effectue une série d'opérations « en avalanche » (mélangeant les bits de manière approfondie) sur l'ensemble de l'état de 128 bits afin de garantir que chaque bit d'entrée affecte chaque bit de sortie.

Différence entre Murmur3C et Murmur3A

La principale distinction entre les deux variantes réside dans la largeur de bits et le cas d'utilisation prévu :

  • Espace de hachage : Murmur3C fournit un hachage de 128 bits (permettant $2^{128}$ valeurs possibles), tandis que Murmur3A fournit un hachage de 32 bits ($2^{32}$ valeurs). Murmur3C est pratiquement immunisé contre les collisions pour la plupart des ensembles de données d'applications standard.
  • Performances : Murmur3A est légèrement plus rapide et consomme moins de mémoire car il fonctionne sur des registres de 32 bits. Murmur3C nécessite une arithmétique 64 bits pour traiter des blocs de 128 bits, ce qui le rend légèrement plus gourmand en ressources de calcul.
  • Cas d'utilisation : Murmur3A est idéal pour les tables de hachage standard à haute vitesse où 32 bits d'entropie suffisent. Murmur3C est le choix privilégié pour les systèmes distribués à grande échelle, l'indexation de bases de données et les scénarios où l'intégrité des données et la prévention des collisions sont primordiales.

Vous aimez ToolsYEP ? Soutenez notre travail !

TOP