Utilisation de la somme de contrôle MD5 et SHA1 pour le téléchargement

8

Je remarque que lors du téléchargement de nombreux outils open source (Eclipse, etc.), il existe des liens pour les sommes de contrôle MD5 et SHA1, et je ne savais pas ce que c'était ni quel était leur objectif.

Je sais que ce sont des algorithmes de hachage, et je comprends le hachage, donc ma seule supposition est qu'ils sont utilisés pour hacher certains composants des cibles de téléchargement, et pour les comparer avec des chaînes de hachage "officielles" stockées côté serveur. Peut-être que de cette façon, il peut être déterminé si les cibles ont été modifiées ou non à partir de leur version correcte (pour des raisons de sécurité et autres).

Suis-je proche ou complètement faux, et si faux, quels sont-ils?!?!

Merci!

Zac
la source

Réponses:

11

Vous avez presque tout à fait raison. La seule correction est qu'ils sont des hachages de l'ensemble du fichier.

Parfois, les fichiers peuvent être corrompus pendant le téléchargement, quelle que soit la manière utilisée pour les transférer. Les hachages sont là pour s'assurer que le fichier est intact. Ceci est particulièrement utile aux utilisateurs avec de mauvaises connexions Internet. À l'époque où j'utilisais un modem fax, j'avais souvent des problèmes avec des téléchargements corrompus.

Certains gestionnaires de téléchargement (comme GetRight, si je me souviens bien), peuvent même calculer automatiquement le hachage du fichier et le comparer à une valeur connue.

Un autre point intéressant est la sécurité. Un problème potentiel avec les outils open source est de savoir à quel point vous pouvez faire confiance au distributeur. Souvent, des programmes tels qu'Eclipse sont le principal outil utilisé par les éditeurs de logiciels et il est donc extrêmement important pour eux de passer du développeur à l'utilisateur intact. Étant donné que les programmes sont open source, il est possible par exemple de créer une version infectée qui aurait l'air normale, mais de divulguer du code source à un serveur distant ou d'infecter des programmes créés par le logiciel avec un virus (je pense que cela est réellement arrivé à une version de Delphi) ou quelque chose de similaire. Pour cette raison, il est important d'avoir un hachage officiel correct qui peut être utilisé pour vérifier si le fichier distribué est ce qui est censé être.

Quelques réflexions sur les canaux de distribution. Souvent, des logiciels gratuits peuvent être trouvés sur une grande quantité de sites et les sites les plus populaires comme SourceForge, par exemple, ont un grand nombre de miroirs. Disons qu'il y a un serveur à Barland qui reflète un grand site de distribution de logiciels. FooSoft utilise le programme distribué par site et se trouve en République de Baz, juste à côté de Barland. Si quelqu'un voulait infiltrer FooSoft, il pourrait modifier uniquement la copie sur Barland Mirror et espérer que le logiciel de géolocalisation s'assurerait alors que FooSoft obtient les versions modifiées. Étant donné que les versions d'autres miroirs sont correctes, les chances que des logiciels malveillants soient détectés sont plus faibles. Vous pouvez également faire en sorte que les logiciels malveillants détectent l'adresse IP de l'ordinateur et ne l'activent que s'ils se trouvent dans une certaine plage, ce qui réduit les chances de découverte, etc.

AndrejaKo
la source
1
+1 Il est également utilisé pour des raisons de sécurité, c'est-à-dire des fichiers infectés ...
Stack Overflow est mort le
@BloodPhilia En effet. J'écrivais juste sur quelques raisons de sécurité.
AndrejaKo
Merci! Je pensais que cela devait être quelque chose dans ce domaine, mais je ne pouvais pas trouver de réponse solide ailleurs.
Zac
3
Bonne réponse;)
Stack Overflow est mort le
1

MD5 et SHA1 ne sont pas seulement des sommes de contrôle. Ce sont des sommes de contrôle cryptographiques. Cela signifie qu'en théorie, deux fichiers différents peuvent avoir la même somme de contrôle, mais la probabilité de cela est très faible, presque 0. Par conséquent, vous utilisez l'inverse: des sommes de contrôle différentes signifient que vous obtenez un contenu différent avec une probabilité de près de 1. Donc des sommes de contrôle cryptographiques sont utilisées pour détecter les changements dans les fichiers. Il peut s'agir de modifications malveillantes faites exprès ou simplement d'erreurs survenues lors des téléchargements.

vtest
la source