CH-J Server Managergerenciamento de servidor sobre SSH
E-mail
Todos os guias e artigos →

SHA-256, SHA-512 ou BLAKE3: que soma de verificação deve usar?

Como diferem os três algoritmos em segurança, velocidade e compatibilidade, o que uma soma de verificação não prova e qual escolher.

A resposta breve

Use o algoritmo indicado por quem publica o ficheiro, pois precisa do mesmo para fazer a comparação. Para novos trabalhos, SHA-256 é a opção com maior compatibilidade e SHA-512 também é uma boa escolha. BLAKE3 é a opção mais rápida para grandes volumes de dados próprios, se a ferramenta estiver disponível em todos os sistemas envolvidos. Os três são considerados seguros atualmente e não se conhece nenhum ataque praticável contra qualquer um deles.

Em que diferem

SHA-256 e SHA-512 pertencem à família SHA-2 normalizada pelo NIST e são frequentemente exigidos pelas regras de conformidade. BLAKE3 é mais recente e não é uma norma do NIST, pelo que pode não satisfazer essas regras. SHA-256 e BLAKE3 com a saída predefinida produzem 256 bits, o que equivale a cerca de 128 bits de resistência a colisões. SHA-512 produz 512 bits e cerca de 256 bits de resistência. Na prática, ambos os níveis estão muito além do que é possível atacar.

A velocidade depende do hardware

BLAKE3 foi concebido para usar vários núcleos de CPU e instruções vetoriais modernas, pelo que costuma ser claramente mais rápido com ficheiros grandes. Entre as variantes SHA-2, o resultado varia: SHA-512 é frequentemente mais rápido em CPU de 64 bits sem instruções especiais, enquanto nos CPU com extensões SHA é SHA-256 que se torna mais rápido. Meça no seu próprio computador com um ficheiro grande, pois a cache e o disco afetam o resultado. Pode ser necessário instalar b3sum separadamente.

time sha256sum large.iso
time sha512sum large.iso
time b3sum large.iso

O que uma soma de verificação prova

Uma soma de verificação coincidente mostra que o ficheiro é idêntico àquele a partir do qual foi calculado o resumo. Não mostra quem criou o ficheiro. Se um atacante conseguir alterar o ficheiro para transferência e a soma de verificação na mesma página, a comparação será bem-sucedida. Para verificar a origem, precisa de um resumo obtido por um canal separado e de confiança ou de uma assinatura, como GPG.

sha256sum -c SHA256SUMS
gpg --verify SHA256SUMS.asc SHA256SUMS

O que evitar

A resistência a colisões de MD5 e SHA-1 foi quebrada, pelo que não devem ser usados para proteger contra adulteração deliberada. Ainda podem aparecer em manifestos antigos, onde apenas detetam danos acidentais. Funções não criptográficas como CRC-32 e xxHash foram concebidas para rapidez e deteção de erros acidentais, nunca para segurança.

Somas de verificação no CH-J Server Manager

O módulo Hash & Checksum inclui os três algoritmos e assinala SHA-256, SHA-512 e BLAKE3 como recomendados e MD5 e SHA-1 como quebrados. Pode calcular resumos, comparar ficheiros e verificar um valor esperado. O módulo não consegue determinar se o próprio valor esperado é fidedigno, por isso obtenha-o de uma fonte em que confie. A aplicação verifica as suas próprias atualizações usando SHA-512 e uma assinatura OpenPGP em conjunto.

Documentação detalhada

NIST FIPS 180-4 →

BLAKE3 specification →

Desbloqueio biométrico e segurança →