Hash

7 tools

As ferramentas de hash do ToolDeck permitem gerar e identificar hashes criptográficos diretamente no navegador. Escolha entre MD5, SHA-1, SHA-256, SHA-384, SHA-512 e HMAC, ou use o Identificador de Hash para detectar o algoritmo a partir de qualquer string de hash desconhecida. Todos os cálculos são executados inteiramente no lado do cliente usando a Web Crypto API. SHA-256 é a escolha padrão para verificação de integridade de arquivos e validação de uso geral. SHA-512 e SHA-384 oferecem margens de segurança mais altas para dados sensíveis e atributos de Subresource Integrity. HMAC combina qualquer algoritmo hash com um segredo compartilhado, possibilitando códigos de autenticação de mensagem para assinaturas de API. O Identificador de Hash reconhece mais de 250 formatos de hash a partir de um único texto colado — todas as ferramentas funcionam inteiramente no seu navegador, sem instalação, sem cadastro e sem enviar nada a qualquer servidor.

O que são Ferramentas de Hash?

Funções hash criptográficas são transformações matemáticas unidirecionais que convertem dados de entrada de qualquer tamanho em um digest de tamanho fixo. A mesma entrada sempre produz a mesma saída (determinismo), mas mesmo um único byte alterado gera um digest completamente diferente — propriedade chamada de efeito avalanche. As funções hash são projetadas de modo que recuperar a entrada original a partir do digest seja computacionalmente inviável.

Ferramentas de hash são usadas em todo o ciclo de desenvolvimento de software para verificação de integridade de dados, armazenamento de senhas, assinaturas digitais e deduplicação de conteúdo. Ao baixar um binário, um checksum SHA-256 confirma que ele não foi corrompido durante o trânsito. Ao armazenar um commit, o Git usa SHA-1 (em transição para SHA-256) para identificar cada objeto pelo conteúdo. Ao armazenar senhas, um servidor usa um algoritmo lento e intensivo em memória como bcrypt ou Argon2 — derivado desses mesmos primitivos hash — para resistir a ataques de força bruta.

Diferentes algoritmos oferecem tamanhos de saída e garantias de segurança distintos. MD5 e SHA-1 são criptograficamente quebrados para fins de segurança — ataques de colisão foram demonstrados na prática — mas continuam amplamente utilizados para checksums e identificadores sem requisitos de segurança. SHA-256 e SHA-512, da família SHA-2 padronizada no NIST FIPS 180-4, são os benchmarks atuais para aplicações sensíveis à segurança. HMAC adiciona uma chave secreta a qualquer função hash, possibilitando autenticação de mensagem que comprova tanto a integridade quanto a autenticidade.

Por que usar Ferramentas de Hash no ToolDeck?

As ferramentas de hash do ToolDeck são criadas para desenvolvedores que precisam de geração de hash rápida e precisa sem enviar dados a um serviço externo. Todos os algoritmos são executados no navegador usando a Web Crypto API ou JavaScript puro — sua entrada nunca sai do dispositivo.

🔒
Geração de Hash com Privacidade em Primeiro Lugar
Seus dados de entrada nunca são transmitidos a nenhum servidor. Todo o hashing é executado localmente no navegador — cole credenciais, tokens ou strings sensíveis sem risco de exposição.
🌐
Precisão com a Web Crypto API
SHA-256, SHA-384 e SHA-512 utilizam a Web Crypto API nativa do navegador — a mesma implementação usada em TLS e criptografia no nível do sistema operacional — não uma reimplementação em JavaScript que poderia divergir do ambiente de produção.
Sete Algoritmos, Uma Interface
MD5, SHA-1, SHA-256, SHA-384, SHA-512, HMAC e o Identificador de Hash são todos acessíveis por uma interface consistente — sem precisar alternar entre ferramentas ou serviços.
🛡️
Resultados Instantâneos, Sem Limites
A geração de hash é quase instantânea para entradas típicas. Sem limites de requisições, sem cotas, sem login necessário — todas as ferramentas funcionam offline após o carregamento da página.

Casos de Uso das Ferramentas de Hash

Hashes criptográficos aparecem em todo o ciclo de vida do desenvolvimento de software — desde a verificação de downloads até a assinatura de requisições de API e a depuração de internos do Git. Aqui estão os cenários mais comuns em que essas ferramentas economizam tempo.

Segurança de API e Assinaturas HMAC
Verifique assinaturas de requisição HMAC-SHA256 ao depurar integrações de webhook com Stripe, GitHub ou Shopify. Gere a assinatura esperada localmente e compare-a com o cabeçalho X-Hub-Signature-256 para diagnosticar falhas de autenticação.
Verificação de Integridade de Arquivos
Calcule checksums SHA-256 para binários baixados, imagens Docker ou arquivos de pacote. Compare com o checksum publicado pelo fornecedor para confirmar que o arquivo não foi corrompido ou adulterado durante o trânsito.
Depuração de Hash de Senhas
Teste que o pipeline de hashing da sua aplicação produz a saída correta. Gere digests SHA-256 ou MD5 de entradas conhecidas para validar a lógica de hash antes de escrever testes de integração.
Depuração de Objetos Git
O Git usa SHA-1 (e cada vez mais SHA-256) para identificar commits, árvores e blobs pelo conteúdo. Gere hashes SHA-1 de dados brutos de objetos para entender como o armazenamento endereçável por conteúdo do Git atribui IDs de objeto.
Subresource Integrity (SRI)
Gere hashes SHA-384 ou SHA-512 para arquivos JavaScript e CSS hospedados em CDN, a fim de preencher o atributo integrity em tags script e link. Isso impede que um CDN comprometido injete código malicioso nas suas páginas.
Auditoria de Segurança e Forense
Identifique strings de hash desconhecidas em arquivos de log, dumps de banco de dados ou tráfego de rede capturado usando a ferramenta Identificador de Hash. Determine se uma string é MD5, SHA-1, SHA-256 ou outro algoritmo pelo seu comprimento e conjunto de caracteres.

Referência de Algoritmos Hash

A tabela abaixo cobre todos os algoritmos disponíveis no ToolDeck. O comprimento da saída é o principal fator de distinção — o Identificador de Hash usa esses comprimentos para detectar tipos de algoritmo a partir de strings de hash desconhecidas.

AlgoritmoBitsComprimento HexFamíliaStatusUso Principal
MD512832MDQuebrado (colisões)Checksums, chaves de cache, deduplicação sem fins de segurança
SHA-116040SHA-1ObsoletoGit (legado), checksums legados, cadeias de certificados
SHA-25625664SHA-2SeguroSenhas, TLS 1.3, Bitcoin, Subresource Integrity
SHA-38438496SHA-2SeguroCertificados TLS, hashes de Subresource Integrity
SHA-512512128SHA-2SeguroArmazenamento de alta segurança, chaves de host SSH
HMACVariávelVariávelMAC com chaveSeguro (com chave)Assinaturas de API, verificação de webhook

Quebrado = ataques de colisão demonstrados na prática. Obsoleto = evitar em código novo sensível à segurança. Seguro = nenhum ataque prático conhecido até 2026.

Como Escolher a Ferramenta de Hash Correta

Diferentes tarefas de hashing exigem algoritmos diferentes. Use este guia para associar seu caso de uso à ferramenta correta.

  1. 1
    Se você precisa verificar um checksum de arquivo, assinar dados de API ou trabalhar com certificados TLSGerador SHA-256
  2. 2
    Se você precisa gerar um hash com a máxima segurança SHA-2 para armazenamento de alta segurança ou chaves SSHGerador SHA-512
  3. 3
    Se você precisa gerar hashes Subresource Integrity (SRI) para arquivos JavaScript ou CSS hospedados em CDNGerador SHA-384
  4. 4
    Se você precisa reproduzir um checksum MD5 legado, chave de cache ou identificador de deduplicação sem fins de segurançaGerador MD5
  5. 5
    Se você precisa calcular um hash SHA-1 para compatibilidade com objetos Git ou uma base de código legadaGerador SHA-1
  6. 6
    Se você precisa verificar assinaturas de webhook HMAC-SHA256 do Stripe, GitHub ou ShopifyGerador HMAC
  7. 7
    Se você precisa identificar o algoritmo usado para produzir uma string de hash desconhecidaIdentificador de Hash

Ao construir novos sistemas, use SHA-256 como padrão para hashing de uso geral e HMAC-SHA256 para hashing de mensagem autenticado. Evite MD5 e SHA-1 em qualquer contexto sensível à segurança — use-os apenas para checksums sem fins de segurança onde a compatibilidade com sistemas legados é necessária.

Perguntas Frequentes

Qual é a diferença entre hashing e criptografia?
Hashing é uma operação unidirecional: uma função hash mapeia entrada arbitrária para um digest de tamanho fixo, e não é possível recuperar a entrada original a partir do digest. Criptografia é bidirecional: dados criptografados podem ser descriptografados com a chave correta. Funções hash são usadas para verificação de integridade e assinaturas digitais. Criptografia é usada para confidencialidade de dados. Nunca use uma função hash como substituta para criptografia quando precisar recuperar os dados originais.
MD5 é seguro para usar?
MD5 é criptograficamente quebrado em termos de resistência a colisão. Pesquisadores demonstraram em 2004 que duas entradas diferentes podem ser criadas para produzir o mesmo hash MD5 em segundos. MD5 não deve ser usado para assinaturas digitais, certificados TLS ou hashing de senhas. Permanece aceitável para casos de uso sem fins de segurança — checksums de arquivo para detecção de erros, chaves de cache e identificadores de deduplicação de conteúdo — onde um atacante não pode explorar uma colisão.
O que é HMAC e quando devo usá-lo?
HMAC (Hash-based Message Authentication Code) combina uma função hash criptográfica com uma chave secreta. Ele comprova tanto que a mensagem não foi adulterada (integridade) quanto que veio de alguém que conhece a chave (autenticidade). Use HMAC ao verificar payloads de webhook do Stripe ou GitHub, ao assinar requisições de API da AWS (Signature Version 4) ou ao autenticar mensagens entre serviços. HMAC-SHA256 é a escolha recomendada para novos sistemas.
Por que a mesma entrada sempre produz o mesmo hash?
Funções hash são transformações matemáticas determinísticas: uma determinada entrada mapeia para exatamente uma saída por meio de um algoritmo fixo. Essa propriedade torna os hashes úteis para verificação — se você fizer o hash de um arquivo hoje e novamente amanhã e obtiver o mesmo digest, o arquivo não mudou. O digest funciona como uma impressão digital de tamanho fixo dos dados de entrada, independentemente do tamanho original da entrada.
O que é uma colisão de hash?
Uma colisão ocorre quando duas entradas diferentes produzem a mesma saída de hash. Colisões devem existir teoricamente porque funções hash mapeiam entradas infinitas para saídas finitas (o princípio da casa dos pombos). Uma função hash segura torna encontrar colisões computacionalmente inviável — efetivamente impossível com o hardware atual. MD5 e SHA-1 são considerados quebrados porque ataques de colisão práticos foram demonstrados: Wang et al. quebraram MD5 em 2004, e o ataque SHAttered quebrou SHA-1 em 2017.
Posso fazer hash de senhas com SHA-256 ou SHA-512?
Não. Funções hash de uso geral como SHA-256 e SHA-512 são projetadas para ser rápidas — um atacante com uma GPU pode calcular bilhões por segundo, tornando ataques de força bruta e de dicionário viáveis. Para armazenamento de senhas, use um algoritmo específico para essa finalidade: bcrypt, scrypt ou Argon2id. Esses são intencionalmente lentos e intensivos em memória, projetados especificamente para resistir a ataques de força bruta em escala. Nunca armazene senhas como hashes MD5 ou SHA simples.
O que significa o número em SHA-256 ou SHA-512?
O número se refere ao tamanho da saída em bits. SHA-256 produz um digest de 256 bits, representado como 64 caracteres hexadecimais (4 bits por dígito hex: 256 ÷ 4 = 64). SHA-512 produz um digest de 512 bits (128 caracteres hex). Um tamanho de saída maior significa muito mais valores de hash possíveis — cada bit adicional dobra o espaço — tornando colisões acidentais e ataques de pré-imagem por força bruta exponencialmente mais difíceis.
Como um hash criptográfico difere de um checksum simples?
Um checksum como CRC32 é otimizado para detecção de erros — é rápido e simples, mas não oferece proteção contra manipulação intencional. Um atacante pode criar um arquivo modificado com o mesmo CRC32. Um hash criptográfico como SHA-256 é resistente a colisão e resistente a pré-imagem: encontrar duas entradas com o mesmo hash, ou encontrar uma entrada que resulte em um determinado alvo, requer computação inviável. Para verificação de downloads onde adulteração é uma preocupação, sempre use um hash criptográfico, não um simples checksum.