O que é um hash
Um hash é uma "impressão digital" de tamanho fixo calculada a partir de um texto ou arquivo. O mesmo texto sempre gera o mesmo hash, mas alterar uma única letra muda tudo. Além disso, é praticamente impossível reconstruir o texto original a partir do hash, por isso ele é chamado de função de mão única.
Qual algoritmo escolher
- SHA-256: padrão atual para verificação de integridade, assinaturas e blockchain. Gera 64 caracteres hexadecimais.
- SHA-512 e SHA-384: versões maiores da mesma família, com 128 e 96 caracteres.
- SHA-1: considerado quebrado para segurança. Serve só para compatibilidade com sistemas antigos.
Exemplo
O SHA-256 do texto ola é 55a9f4f8994b1bbf2058ea38c8efb6c459000814d5f39c087002571639e6230e. Já "Ola", com O maiúsculo, produz um hash completamente diferente. O cálculo considera os bytes do texto em UTF-8, então "olá" (4 bytes) tem hash distinto de "ola" (3 bytes).
Para que usar e o que evitar
Hashes são úteis para conferir se um texto foi alterado, identificar conteúdos duplicados e montar assinaturas. Porém, não use SHA-256 puro para guardar senhas: para isso existem algoritmos lentos e com sal, como bcrypt, scrypt ou Argon2. Esta ferramenta não calcula MD5, que o navegador não oferece por ser inseguro.