Nota SeguraBR

SHA-512: o que é e como funciona

O irmão maior do SHA-256: uma impressão digital de 512 bits, feita para processadores de 64 bits.

O que é

O SHA-512 é uma função de hash da família SHA-2, a mesma do SHA-256, definida no padrão FIPS 180-4 do NIST. Ele transforma qualquer entrada em um resultado de 512 bits, mostrado como 128 caracteres hexadecimais.

Como todo hash, ele não usa chave e não pode ser desfeito. O objetivo é identificar um conteúdo e provar que ele não mudou, e não esconder esse conteúdo.

A família SHA-2 foi publicada no início dos anos 2000 para substituir o SHA-1. Ela inclui o SHA-224, o SHA-256, o SHA-384 e o SHA-512, que diferem no tamanho do resultado e das palavras internas. Mais de vinte anos depois, nenhuma delas tem ataque prático conhecido.

Como funciona

A estrutura é a mesma do SHA-256, mas com números maiores. O texto é dividido em blocos de 1024 bits, e cada bloco passa por 80 rodadas de somas, rotações e combinações lógicas sobre palavras de 64 bits. No SHA-256, são blocos de 512 bits, 64 rodadas e palavras de 32 bits.

Por trabalhar com palavras de 64 bits, o SHA-512 costuma ser mais rápido que o SHA-256 em processadores de 64 bits que não têm instruções especiais para o SHA-256. O padrão também define versões cortadas, como o SHA-512/256, que usam a mesma máquina e entregam um resultado menor.

Exemplo

No playground desta página, escolha SHA-512 e digite "abc". O resultado é sempre ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f. São 128 caracteres, o dobro do SHA-256.

Mude uma letra e o resultado muda por completo. Não existe botão para desfazer, porque um hash não tem caminho de volta.

Onde é usado

O SHA-512 está em vários lugares do dia a dia:

  • Assinaturas Ed25519, que usam o SHA-512 internamente para gerar o número secreto de cada assinatura.
  • Senhas do Linux: no arquivo de senhas, os registros que começam com $6$ usam o método sha512crypt, que repete o SHA-512 milhares de vezes com um sal.
  • Verificação de arquivos baixados e de pacotes de software.
  • HMAC-SHA-512 e funções de derivação de chave.

Pontos fortes e fracos

Pontos fortes: não há ataque prático conhecido, e o resultado de 512 bits dá uma margem enorme contra colisões. É rápido em computadores de 64 bits.

Pontos fracos: o resultado é longo, o que ocupa mais espaço quando só é preciso identificar um arquivo. Em processadores de 32 bits e em alguns chips com aceleração própria para o SHA-256, ele é mais lento. E, como todo hash rápido, ele não serve sozinho para guardar senhas: um atacante consegue testar muitos palpites por segundo.

Quando usar

Use o SHA-512 quando um padrão o exige, como no Ed25519, ou quando quiser uma margem maior que a do SHA-256 em sistemas de 64 bits. Para a maioria dos usos, o SHA-256 e o SHA-512 são igualmente seguros.

Não use o SHA-512 puro para guardar senhas: use Argon2, scrypt ou bcrypt. Para autenticar uma mensagem com uma chave, use o HMAC.

Teste os algoritmos

Escolha um algoritmo, escreva um texto e veja como ele fica. Tudo acontece no seu navegador e nada é salvo.

Criptografia

Hash

Autenticação e assinatura

Troca e derivação de chaves

Codificação

Cifras clássicas

SHA-512

Não é criptografia

Hash

Hash da mesma família do SHA-256, com resultado de 512 bits. É usado em assinaturas Ed25519 e em hashes de senhas do Linux. Como todo hash, não pode ser desfeito.

Ver todos os algoritmos

0/500

Veja também

Precisa enviar um segredo?

Use uma nota segura: o texto é criptografado com AES-256-GCM e se apaga sozinho.

Criar uma nota