Miklix

Calculadora de código Hash JOAAT

Publicado: 18 de fevereiro de 2025 às 00:19:58 UTC
Última atualização: 12 de janeiro de 2026 às 13:30:32 UTC

Calculadora de código de hash que utiliza a função de hash Jenkins One At A Time (JOAAT) para calcular um código de hash com base na introdução de texto ou carregamento de ficheiros.

Esta página foi traduzida automaticamente do inglês para a tornar acessível ao maior número possível de pessoas. Infelizmente, a tradução automática ainda não é uma tecnologia aperfeiçoada, pelo que podem ocorrer erros. Se preferir, pode ver a versão original em inglês aqui:

JOAAT Hash Code Calculator

A função de hash JOAAT (Jenkins One At A Time) é uma função de hash não criptográfica concebida por Bob Jenkins, um conhecido cientista da computação na área dos algoritmos de hashing. É amplamente utilizado devido à sua simplicidade, velocidade e boas propriedades de distribuição, tornando-o eficaz para consultas em tabelas hash, somas de verificação e indexação de dados. Emite um código hash de 32 bits (4 bytes), normalmente representado como um número hexadecimal de 8 dígitos.

Divulgação completa: eu não escrevi a implementação específica da função hash usada nesta página. Trata-se de uma função padrão incluída na linguagem de programação PHP. Apenas criei a interface Web para a tornar publicamente disponível aqui por conveniência.


Calcular o novo código Hash

Os dados enviados ou os ficheiros carregados através deste formulário só serão mantidos no servidor durante o tempo necessário para gerar o código hash solicitado. Serão eliminados imediatamente antes de o resultado ser devolvido ao seu browser.

Dados de entrada:



O texto enviado é codificado em UTF-8. Uma vez que as funções de hash operam em dados binários, o resultado será diferente do que se o texto estivesse noutra codificação. Se precisar de calcular um hash de um texto numa codificação específica, deve carregar um ficheiro.



Sobre o Algoritmo de Hash JOAAT

Não sou matemático, mas vou tentar explicar esta função hash usando uma analogia que os meus colegas não-matemáticos possam compreender. Se preferires uma explicação matemática cientificamente correta e completa, tenho a certeza de que a encontras noutro lado ;-)

Pensa no JOAAT como fazer uma sopa especial. Tens uma lista de ingredientes (estes são os teus dados de entrada, como uma palavra ou um ficheiro), e queres misturá-los de forma que, mesmo que mudes só um pequeno detalhe – como adicionar uma pitada extra de sal – o sabor da sopa mude completamente. Este "sabor" é o teu valor de hash, um número único que representa a tua entrada.

A função JOAAT faz isto em quatro etapas:

Passo 1: Começar com um Pote Vazio (Inicialização)

Começas com um tacho vazio de sopa. No JOAAT, este "pote" começa com o número 0.

Passo 2: Adicionar os ingredientes um de cada vez (processar cada byte)

Agora, vão adicionando os ingredientes um a um. Imagina que cada letra ou número nos teus dados é como adicionar um tempero diferente ao caldeirão.

  • Adicione o tempero (adicione o valor da carta ao seu tacho).
  • Mexa vigorosamente (mistura duplicando o sabor com um movimento especial de mexer – isto é como um "shift" matemático).
  • Adiciona uma reviravolta surpresa (adiciona um pouco de aleatoriedade – esta é a operação XOR, que ajuda a baralhar a mistura).

Passo 3: Especiarias Secretas Finais (Mistura Final)

Depois de adicionares todos os ingredientes, fazes mais algumas misturas secretas e batidos de especiarias para garantir que o sabor é imprevisível. É aqui que a JOAAT faz alguns passos finais de mistura e embaralhamento para garantir que o resultado seja único.

Passo 4: Prova de Sabor (Saída)

Finalmente, provas a sopa – ou, no caso do JOAAT, obténs um número (o valor de hash) que representa o sabor único da tua sopa. Até a mais pequena alteração nos ingredientes (como mudar uma letra na sua entrada) vai dar-lhe um sabor completamente diferente (um número totalmente diferente).

Leitura adicional

Se gostou deste post, também pode gostar destas sugestões:


Partilhar no BlueskyPartilhar no FacebookPartilhar no LinkedInPartilhar no TumblrPartilhar em XPartilhar no LinkedInFixar no Pinterest

Mikkel Christensen

Sobre o autor

Mikkel Christensen
Mikkel é o criador e proprietário do miklix.com. Tem mais de 20 anos de experiência como programador informático/desenvolvedor de software profissional e trabalha atualmente a tempo inteiro para uma grande empresa europeia de TI. Quando não está a escrever no blogue, dedica o seu tempo livre a um vasto leque de interesses, passatempos e actividades, que podem, em certa medida, refletir-se na variedade de tópicos abordados neste sítio Web.