Texto
Arquivo
160 bits
256 bits
384 bits
512 bits
O que são Hashes SHA?
SHA (Secure Hash Algorithm) é uma família de funções hash criptográficas publicadas pelo NIST (National Institute of Standards and Technology). Estas funções transformam dados de qualquer tamanho em uma sequência de bits de tamanho fixo, chamada de hash.
Características importantes:
  • Determinístico: A mesma entrada sempre produz o mesmo hash
  • Irreversível: É computacionalmente inviável recuperar os dados originais a partir do hash
  • Resistente a colisões: É difícil encontrar duas entradas diferentes que produzam o mesmo hash
  • Pequena mudança, grande diferença: Uma pequena alteração na entrada resulta em um hash completamente diferente
Algoritmo Tamanho do Hash Segurança Aplicações
SHA-1 160 bits (40 caracteres hex) Baixa Verificação de integridade (não para segurança)
SHA-256 256 bits (64 caracteres hex) Alta Blockchain, assinaturas digitais, TLS/SSL
SHA-384 384 bits (96 caracteres hex) Alta Aplicações que exigem maior segurança
SHA-512 512 bits (128 caracteres hex) Alta Criptografia forte, sistemas de alta segurança
Aplicações Práticas de Hashes SHA
🔐 Verificação de Integridade
Hashes são usados para verificar se arquivos foram corrompidos ou alterados durante transferência ou armazenamento. Comparando o hash do arquivo original com o do arquivo recebido, você pode garantir sua integridade.
⛓️ Blockchain e Criptomoedas
SHA-256 é fundamental para o funcionamento do Bitcoin e outras criptomoedas. É usado no processo de mineração para criar novos blocos e garantir a imutabilidade da blockchain.
📧 Assinaturas Digitais
Em assinaturas digitais, o hash de um documento é criptografado com uma chave privada. O receptor pode verificar a autenticidade recalculando o hash e descriptografando a assinatura com a chave pública.
🔑 Armazenamento de Senhas
Sistemas modernos armazenam hashes de senhas em vez das senhas em texto claro. Quando um usuário faz login, o sistema calcula o hash da senha fornecida e compara com o hash armazenado.
Considerações de Segurança
Embora os hashes SHA sejam amplamente utilizados, é importante entender suas limitações:
  • SHA-1 é considerado inseguro para aplicações criptográficas desde 2005, quando foram descobertas vulnerabilidades que permitem colisões
  • SHA-256 e superiores são considerados seguros atualmente, mas a evolução da computação quântica pode mudar isso no futuro
  • Hashes sozinhos não fornecem autenticação - para isso, são necessárias assinaturas digitais ou HMAC
  • Para senhas, hashes simples são vulneráveis a ataques de dicionário e rainbow tables - use funções de derivação de chave como PBKDF2 ou bcrypt
Recomendações: Para novas aplicações, prefira SHA-256 ou superiores. Evite SHA-1 para qualquer finalidade que exija segurança criptográfica.