2010-11-12 4 views
2

Je sais que les fonctions de hachage effectuent des calculs et que le résultat final est une chaîne de longueur fixe. Ils sont utilisés pour vérifier que les fichiers sont identiques - fichiers téléchargés, par exemple. Il y a un hash présenté par le propriétaire du fichier, et donc le contrôle d'intégrité dans ce cas est la comparaison des 2 hashes.Contrôle d'intégrité de fichier MD5

Alors, est-ce la seule vérification d'intégrité de fichier ou autre chose?

Répondre

2

Tout contrôle d'intégrité en deçà d'une comparaison octet-octet est inévitablement similaire à un hachage. Cela dit, avant que les hachages cryptographiques comme MD5 ne deviennent communément utilisés, des algorithmes plus simples appelés "checksums" ont été utilisés. Certains ont été standardisés (essayez de chercher, par exemple, CRC32) à un degré ou un autre.

La qualité de ces méthodes varie considérablement. Une somme de contrôle CRC32 peut facilement manquer des corruptions ou des modifications dans un fichier de taille substantielle, par exemple, alors que l'une quelconque des fonctions cryptographiques courantes (par exemple MD5 ou SHA *) est un bon indicateur d'intégrité. Faites attention à ce que vous utilisez et dans quel but, cependant - MD5 et SHA-1 ne sont plus considérés comme sûrs contre les attaques malveillantes (ils sont parfaits si vous les utilisez simplement comme "meilleur checksum" , bien que).

0

Habituellement, c'est tout. Cependant, cela ne vérifie pas d'où vient le fichier. Ce dernier est réalisé par une signature numérique plus complexe.

MD5 (as well as SHA-1) a également été broken et ne doit donc pas être utilisé dans des scénarios où une modification intentionnelle de fichier a pu se produire. Des fonctions de hachage plus fortes devraient être utilisées.

+1

Une suggestion sur ce que serait serait aiderait. – Kickaha

0

Les fonctions de hachage sont utilisées pour des raisons d'intégrité dans de nombreux domaines tels que les réseaux. D'autre part, ont une faible notion de l'intégrité de sorte que la plupart du temps sont évités. Ils prennent une longueur arbitraire et produisent (généralement compresser les données) à longueur fixe. Comment la fonction de hachage est vérifiée? Comme vous l'avez dit, le récepteur produit la fonction de hachage du message, puis vérifie les deux valeurs. En outre, cette fonction n'authentifie pas l'expéditeur du message, ce qui explique pourquoi "Digital Signatures" existe. Quand quelqu'un signe le message ne peut pas nier qu'il a exécuté l'action spécifique, les signatures fournissent également la "non répudiation" Vous devez donc faire attention à la fonction que vous allez utiliser MD5 sont faibles contrairement à SHA-1, SHA- 2. Vous pouvez également essayer mcrypt et scrypt qui sont les plus forts