terça-feira, 26 de março de 2024

Como comparar hashes no linux?

No terminal do Linux, você pode comparar hashes usando o comando diff em conjunto com o comando sha256sum ou md5sum, dependendo do tipo de hash que você está usando. Aqui está um exemplo de como você pode fazer isso:

# Gerar o hash do primeiro arquivo
hash1=$(sha256sum arquivo1.txt)

# Gerar o hash do segundo arquivo
hash2=$(sha256sum arquivo2.txt)

# Comparar os hashes
if [ "$hash1" == "$hash2" ]
then
    echo "Os arquivos são iguais."
else
    echo "Os arquivos são diferentes."
fi 

Neste caso, fi é essencialmente o fechamento do bloco if. É equivalente ao } em muitas outras linguagens de programação. Sem o fi, o shell não saberia onde o bloco if termina, e você receberia um erro de sintaxe. Portanto, sempre que você abrir um bloco if em um script de shell, você deve fechá-lo com fi.

Neste exemplo, substitua arquivo1.txt e arquivo2.txt pelos nomes dos arquivos que você deseja comparar. Este script gera o hash SHA-256 para cada arquivo e, em seguida, compara os hashes. Se os hashes forem iguais, ele imprimirá “Os arquivos são iguais”. Caso contrário, ele imprimirá “Os arquivos são diferentes”.

Lembre-se de que este é apenas um exemplo e você pode precisar ajustá-lo para se adequar às suas necessidades específicas. Por exemplo, se você estiver usando hashes MD5 em vez de SHA-256, você substituiria sha256sum por md5sum no script acima. Além disso, este script pressupõe que você está executando-o em um shell que suporta a sintaxe mostrada (como o Bash, que é o shell padrão na maioria das distribuições Linux). Se você estiver usando um shell diferente, pode precisar ajustar a sintaxe.

Outras opções:

  • É possível utilizar ferramentas gráficas para comparar hashes, como o GtkHash.
  • Você pode usar scripts para automatizar a comparação de hashes em vários arquivos.

Exemplo prático:

Suponha que você baixou um arquivo ISO de um sistema operacional e deseja verificar se ele está corrompido. Você pode baixar o hash MD5 original do site do sistema operacional e compará-lo com o hash do arquivo que você baixou.

# Baixe o hash MD5 original
wget https://www.ubuntu.com/server/releases/focal/MD5SUMS

# Calcule o hash MD5 do arquivo baixado
md5sum ubuntu-20.04.5-live-server-amd64.iso

# Compare os hashes
diff MD5SUMS ubuntu-20.04.5-live-server-amd64.iso

Se os hashes forem iguais, o arquivo ISO não está corrompido. Se os hashes forem diferentes, o arquivo ISO está corrompido e você deve baixá-lo novamente.

 

Nenhum comentário:

Postar um comentário

Postagens mais visitadas

Postagem em destaque

Algumas comunidades de Cibersegurança

BSides San Francisco CCC – Confidential Computing Consortium CForum CIS – Center for Internet Security CompTIA CREST CSA – Cloud Security Al...