O que é uma função de hash? (MD5, SHA-256)
Publicado a 02/10/2025 · 2 min de leitura · Ferramentas para programadores
Daniel Okonkwo — Programador front-end e redator de Tecnologia na Allin
Desempenho web · Formatos de ficheiro
Verificado a partir de 2 fontes
Uma função de hash transforma qualquer entrada numa cadeia de caracteres de tamanho fixo — o seu 'hash' ou 'resumo'. A mesma entrada dá sempre o mesmo hash, mas não pode invertê-lo para recuperar a entrada, e qualquer mudança mínima produz um resultado totalmente diferente. O SHA-256 é uma escolha moderna e segura; o MD5 e o SHA-1 estão quebrados para segurança e só devem ser usados para checksums sem função de segurança.
Uma função de hash transforma qualquer entrada numa impressão de tamanho fixo. Eis o que faz, as suas propriedades-chave, usos comuns e que algoritmos são seguros.
O que faz
Uma função de hash pega em dados de qualquer tamanho — uma palavra, um documento, uma imagem de disco inteira — e mapeia-os para uma cadeia de comprimento fixo, como os 64 caracteres hex de um resumo SHA-256. Essa saída é determinista: a mesma entrada dá sempre exatamente o mesmo hash. Pense nisso como uma impressão dos dados, compacta e própria do que a produziu.
Propriedades-chave
Os bons hashes criptográficos partilham alguns traços. São de sentido único: não se pode voltar do resumo à entrada. Mostram o efeito avalanche: mude um bit e muda todo o hash. E resistem a colisões: deve ser inviável encontrar duas entradas diferentes com o mesmo hash. Juntos, fazem do hash um substituto fiável dos próprios dados.
Usos comuns
Os hashes verificam integridade: publique o hash de um ficheiro e qualquer um pode voltar a fazer o hash do download para confirmar que não foi alterado. Sustentam assinaturas digitais e blockchains, e desduplicam dados por impressão. As palavras-passe também se guardam como hashes — mas com um sal aleatório e um algoritmo propositadamente lento, para que uma base roubada seja muito mais difícil de quebrar.
MD5, SHA-1, SHA-256
O MD5 e o SHA-1 são antigos e estão quebrados: os investigadores conseguem produzir colisões, por isso já não são fiáveis para segurança, embora continuem bem como checksums rápidos contra corrupção acidental. O SHA-256 (família SHA-2) é o padrão seguro atual para integridade e assinaturas. Para palavras-passe em concreto, não use um hash rápido simples — use um lento e com sal como bcrypt ou Argon2.
Perguntas frequentes
- Um hash é reversível?
- Não. Um bom hash é de sentido único, por isso não pode recuperar a entrada original a partir do resumo — só pode voltar a fazer o hash de um palpite e comparar.
- Porque o MD5 é considerado quebrado?
- Existem colisões práticas — duas entradas diferentes que produzem o mesmo hash MD5 — por isso já não é fiável onde a segurança importa.
- Devo fazer hash de palavras-passe com SHA-256?
- Não. Use um hash de palavra-passe lento e com sal como bcrypt ou Argon2 — resistem a ataques de força bruta muito melhor que um hash rápido genérico.
Artigos que podem interessar-lhe
Todos os guias →Ferramentas relacionadas
Fontes
Detetaste um erro neste artigo?