Gerador de MurmurHash
Calcule hashes MurmurHash3 em 32 ou 128 bits a partir de qualquer texto.
Como usar Gerador de MurmurHash
- Digite ou cole seu texto na caixa.
- Escolha a variante — 32 bits atende à maioria dos trabalhos com tabelas hash.
- O hash aparece enquanto você digita; clique em Copiar para obtê-lo.
Sobre Gerador de MurmurHash
O MurmurHash3 foi criado por Austin Appleby e se tornou a resposta padrão para "com o que devo fazer hash das minhas chaves?" para toda uma geração de código de infraestrutura. O nome vem do seu laço interno — multiplicar, rotacionar, multiplicar, rotacionar — um punhado de instruções baratas de CPU repetidas em blocos da entrada, seguidas por uma etapa de finalização que provoca uma avalanche nos bits. Não é uma soma de verificação nem um hash criptográfico: é um hash de distribuição, feito para transformar chaves em números que se espalham uniformemente entre baldes, por isso é tão comum em tabelas hash e filtros de Bloom.
Os nomes das variantes precisam de explicação, porque duas delas parecem intercambiáveis e não são. O murmur3a é a versão de 32 bits e fornece 8 caracteres hexadecimais. O murmur3c e o murmur3f são ambos de 128 bits e ambos fornecem 32 caracteres hexadecimais, mas são algoritmos separados — um ajustado para CPUs x86 de 32 bits, outro para x64 de 64 bits — e produzem saídas completamente diferentes para a mesma entrada. Não são duas implementações de um único hash; escolher a "errada" não vai corresponder ao outro sistema com o qual você está tentando se comunicar. Se você está comparando hashes com outra ferramenta ou biblioteca, precisa corresponder exatamente à variante que ela usou.
Escolha 32 bits a menos que tenha um motivo para não fazê-lo: é o mais rápido e 8 caracteres são suficientes para uma distribuição comum em baldes. Passe para uma variante de 128 bits quando estiver fazendo hash de conjuntos de chaves muito grandes e quiser que colisões acidentais se tornem extremamente improváveis, ou quando precisar de um identificador compacto para deduplicação. Nenhuma delas é segura contra um atacante — colisões do MurmurHash3 podem ser produzidas deliberadamente, e ataques de hash-flooding contra serviços que o usaram sem proteção são um problema real e documentado. Para qualquer coisa adversarial, recorra ao SHA-256; até o MD5 está em uma categoria de dificuldade diferente.
Perguntas frequentes
Qual é a diferença entre murmur3c e murmur3f?
Ambos são de 128 bits e ambos produzem 32 caracteres hexadecimais, mas são algoritmos diferentes — o murmur3c é ajustado para x86 e o murmur3f para x64. A mesma entrada gera resultados diferentes, então você precisa escolher exatamente a variante que o outro sistema usa.
Qual variante devo escolher?
MurmurHash3 de 32 bits para trabalhos comuns de tabela hash e distribuição em baldes. Use uma variante de 128 bits quando tiver conjuntos de chaves enormes ou quiser um ID compacto onde colisões acidentais precisem ser extremamente raras.
O MurmurHash é seguro?
Não. É um hash de distribuição rápido sem nenhuma resistência a ataques — colisões podem ser criadas de propósito, o que já foi usado em ataques de negação de serviço por hash-flooding. Nunca o use para senhas, assinaturas ou detecção de adulteração.
Para que o MurmurHash é bom?
Tabelas hash, filtros de Bloom, sharding, particionamento e chaves de cache — qualquer lugar onde você precise que as chaves se espalhem de forma uniforme e rápida e ninguém esteja tentando manipular o resultado.
Meu texto é enviado para algum lugar?
Seu texto é enviado ao nosso servidor para ser hasheado, porque os navegadores não conseguem calcular MurmurHash. Ele é hasheado e descartado imediatamente — nunca registrado, nunca armazenado.

