Eu baixei uma quantidade enorme de arquivos, mas descobri o uso do md5 e sha como verificadores de integridade recentemente. Desde então, eu sempre prefiro procurá-lo por grandes arquivos baixados, mesmo que nunca os tenha encontrado corrompidos.
Realmente precisamos verificar a integridade dos arquivos baixados?
Escolha como exemplo uma distribuição Linux que acabei de baixar, que é de 1 GB, se você quiser.
Obrigado
download
file-download
checksum
data-integrity
maxpesa
fonte
fonte
Respostas:
Depende de alguns fatores.
Você tem uma conexão estável à Internet?
Se você possui uma conexão estável à Internet, não é necessário verificar a integridade do arquivo, pois ele provavelmente estará correto. Eu nunca verifico o hash e também nunca tive arquivos corrompidos. Ou talvez uma vez quando o servidor remoto foi desconectado.
Deseja verificar o arquivo com base em razões de segurança?
Se você estiver preocupado com a segurança do arquivo que está baixando, poderá usar o hash MD5 para verificar se o arquivo não foi de alguma forma alterado. Você baixa um arquivo e, se o hash MD5 não corresponder, significa que o arquivo no servidor é diferente do hash MD5 e, de alguma forma, algo está errado. Isso só seria válido se você não confiar no servidor do qual está baixando, mas geralmente se alguém fornecer um hash, ele também tentará o máximo possível para manter as coisas atualizadas. Mas se o site foi invadido e você verificou o hash MD5, recebeu o pequeno bônus.
No geral, esses 2 darão um não para a maioria das pessoas. Se é um não para você, isso depende inteiramente de você, é claro.
fonte
A resposta e a escolha que se faz serão baseadas em sua tolerância a riscos e considerações de tempo e esforço na verificação.
Verificar os hashes MD5 / SHA1 é um bom primeiro passo e você deve fazê-lo quando tiver tempo. No entanto, você deve considerar sua capacidade de confiar no hash fornecido. Por exemplo, se o site do autor com o hash for invadido, o invasor poderá alterar o hash, para que você não saiba. Se o hash que você calcula não for o mesmo que o hash fornecido, você sabe que algo está acontecendo. No entanto, apenas porque a correspondência de hashes não garante que o arquivo seja bom.
Uma alternativa melhor para um autor de software fornecer integridade e autenticidade é assinar digitalmente os arquivos que estão sendo distribuídos. Isso anexa as informações de autenticidade ao arquivo e não depende da confiança em algum site. Se um autor assina digitalmente o arquivo, a única maneira de falsificá-lo é uma autoridade de certificação comprometida ou se a chave de assinatura do desenvolvedor foi roubada. Ambos os casos são muito menos prováveis do que um site na Internet ser invadido.
Por fim, você deve fazer sua própria diligência para determinar se deseja confiar em algo e, em seguida, tomar contramedidas (executadas em uma sandbox, uma máquina virtual etc.) para atenuar quaisquer fatores ou erros de cálculo desconhecidos que você fez ao decidir se deve ou não confiar .
fonte
Por motivos de segurança, SIM. Considere que um nó de saída do Tor foi considerado um patch de binários durante o download ; lembre-se de que o seu ISP pode ou não ter a menor moral e que eles estão no controle completo da sua conexão à Internet.
fonte
Apenas para adicionar às outras respostas:
TLDR: para arquivos em que a integridade é crítica, sim
Resposta longa: muitas vezes acho necessário quando estou fazendo algo em que é essencial que o arquivo tenha uma alta integridade.
Um exemplo é piscar um roteador com o OpenWRT. Se o arquivo estiver corrompido, esse roteador ficaria bloqueado e eu precisaria:
Ambos são inconvenientes, comparados à simplicidade de verificar um hash. Portanto, eu recomendo fortemente fazê-lo para arquivos críticos.
fonte
Normalmente, só me preocupo em verificar se meu download foi interrompido e o retomei mais tarde, porque as solicitações HTTP com um deslocamento de busca não são tão amplamente usadas, portanto, algo tolo pode ter acontecido.
Em muitos casos, o download é um arquivo compactado que não será descompactado se estiver quebrado. Se não for esse o caso, verificar não é uma má ideia. Talvez eu verifique um ISO antes de gravá-lo em uma mídia de gravação única.
Verificá-lo com um hash no mesmo site em que o adquiri é de pouca utilidade, em termos de segurança, como disseram outras respostas e comentários. Pode ser mais útil se você baixou de um espelho, mas o hash é do original upstream. Ou se o nome do arquivo for ambíguo e, por algum motivo, você não tiver certeza de que obteve a versão exata desejada.
O ponto é que a publicação de hashes é útil para muitos casos especiais, além do download do arquivo no mesmo site que hospeda o hash.
fonte