Como as ferramentas de hash e checksum verificam dados?
As ferramentas de hash e checksum calculam um valor compacto a partir dos dados de entrada. Compare esse valor com um valor confiável calculado a partir dos bytes esperados. Uma correspondência apoia uma verificação de integridade, mas não prova segurança, autoria ou autenticidade por si só.
Tool Factory conecta ferramentas de digest de arquivos e texto a páginas de comparação, identificação e explicação. A coleção mantém as escolhas de algoritmo visíveis e separa verificações de integridade de hash de senhas, autenticação de mensagens e criptografia.
Escolha o mecanismo de integridade conforme o modelo de ameaça
| Mecanismo | O que fornece | O que não fornece |
|---|---|---|
| Checksum não criptográfico | Detecção rápida de muitas alterações acidentais. | Resistência contra um atacante deliberado. |
| Hash criptográfico | Um digest de tamanho fixo projetado para propriedades de segurança. | Prova de que um digest publicado veio de uma fonte confiável. |
| HMAC | Autenticação de mensagens com chave para partes que compartilham um segredo. | Verificação pública ou confidencialidade. |
| Hash de senha | Derivação lenta e salgada de verificador de senha, com custo controlado. | Integridade geral de arquivos ou criptografia reversível. |
| Assinatura digital | Integridade verificável publicamente e evidência da chave do assinante. | Confidencialidade, a menos que também se use criptografia. |
Como concluir esta tarefa
- Obtenha o digest confiável. Obtenha o valor esperado e o algoritmo por um canal autenticado do publicador.
- Selecione o mesmo algoritmo. Um resultado SHA-256 não pode ser comparado com um resultado MD5 ou SHA-3.
- Calcule o hash dos bytes exatos. Use o arquivo baixado sem abri-lo, reescrevê-lo ou normalizá-lo antes.
- Compare cada caractere. Trate maiúsculas e minúsculas somente conforme a representação selecionada permite, e rejeite qualquer diferença de valor.
- Interprete o resultado com limite. Uma correspondência relaciona os bytes ao digest confiável, e não a uma garantia de segurança.
Casos de uso comuns
Verificação de download de software
Compare o digest de um arquivo local com um valor publicado por um canal confiável do projeto.
Diagnóstico de transferência de dados
Calcule os digests dos dois pontos para detectar alterações de bytes durante o armazenamento ou transporte.
Verificação de conteúdo duplicado
Use digests correspondentes como candidatos rápidos à igualdade e preserve os requisitos de colisão adequados ao risco.
Evidências e padrões
- NIST Hash Functions project: O NIST descreve algoritmos de hash aprovados como mapeamentos de mensagens de comprimento arbitrário para digests de comprimento fixo.
- NIST FIPS 180-4: O FIPS 180-4 especifica SHA-1 e a família SHA-2, incluindo as variantes SHA-256 e SHA-512.
- NIST FIPS 202: O FIPS 202 especifica a família SHA-3 e as funções de saída extensível SHAKE.
- RFC 6151: A RFC 6151 atualiza as considerações de segurança para aplicações MD5 e HMAC-MD5.
- NIST SHA-1 transition guidance: O NIST anunciou uma transição para longe de SHA-1 e recomenda alternativas SHA-2 ou SHA-3 mais fortes para aplicações de segurança.
Limitações importantes
- O digest esperado é útil somente quando seu canal de entrega é confiável.
- Um digest correspondente não verifica um arquivo em busca de comportamento malicioso.
- A adequação do algoritmo depende dos requisitos de erro acidental, adversário, autenticação ou armazenamento de senhas.