Calculadora de código hash MurmurHash3C
Publicado: 18 de fevereiro de 2025 às 00:34:18 UTC
Calculadora de código hash que usa a função hash MurmurHash3C para calcular um código hash com base na entrada de texto ou no upload de arquivo.MurmurHash3C Hash Code Calculator
MurmurHash3 é uma função hash não criptográfica projetada por Austin Appleby em 2008. É amplamente usada para hash de propósito geral devido à sua velocidade, simplicidade e boas propriedades de distribuição. As funções MurmurHash são particularmente eficazes para estruturas de dados baseadas em hash, como tabelas de hash, filtros bloom e sistemas de desduplicação de dados.
A variante apresentada nesta página é a variante 3C, que é otimizada para sistemas de 32 bits, assim como a variante 3A. No entanto, diferentemente da variante 3A, ela produz códigos hash de 128 bits (16 bytes), tipicamente representados como um número hexadecimal de 32 dígitos.
Divulgação completa: não escrevi a implementação específica da função hash usada nesta página. Ela é uma função padrão incluída na linguagem de programação PHP. Apenas criei a interface da Web para disponibilizá-la publicamente aqui por conveniência.
Sobre o Algoritmo Hash MurmurHash3C
Não sou matemático, mas tentarei explicar essa função hash usando uma analogia que meus colegas não matemáticos possam entender. Se você preferir uma explicação matemática completa e cientificamente correta, tenho certeza de que poderá encontrá-la em outro lugar ;-)
Agora, imagine que você tem uma grande caixa de peças LEGO. Cada vez que você as organiza de uma forma específica, você tira uma foto. Não importa quão grande ou colorido o arranjo seja, a câmera sempre lhe dá uma foto pequena e de tamanho fixo. Essa foto representa sua criação LEGO, mas em uma forma compacta.
MurmurHash3 faz algo parecido com dados. Ele pega qualquer tipo de dado (texto, números, arquivos) e o reduz a uma pequena "impressão digital" fixa ou valor hash. Essa impressão digital ajuda os computadores a identificar, classificar e comparar dados rapidamente sem precisar olhar para a coisa toda.
Outra analogia seria como assar um bolo e MurmurHash3 é a receita para transformar esse bolo em um pequeno cupcake (o hash). Esse seria um processo de três etapas:
Etapa 1: Corte em pedaços (quebrando os dados)
- Primeiro, o MurmurHash3 divide seus dados em pedaços iguais, como se estivesse cortando um bolo em quadrados iguais.
Etapa 2: Misture como louco (misturando os pedaços)
- Cada peça passa por um processo de mistura selvagem:
- Inversão: como virar uma panqueca, ele reorganiza os pedaços.
- Mexendo: Adiciona ingredientes aleatórios (operações matemáticas) para misturar as coisas.
- Compressão: Comprime os dados para garantir que nenhuma parte original se destaque.
Etapa 3: Teste de sabor final (finalização)
- Depois de misturar todos os pedaços, o MurmurHash3 dá uma última mexida para garantir que até mesmo a menor alteração nos dados originais mudaria totalmente o sabor (o hash).