2009-08-24 4 views
0

Dire que j'ai « n » nombre de fichiers, pour lesquels chacun je CRC32, digests MD5 et SHA1fichier Vérification digère

Maintenant, ce nombre « n » de fichiers sont en fait diviser des fichiers/archives du grand fichier unique .

Lorsque ces fichiers plus petits sont recombinés/joints dans le fichier plus volumineux, nous pouvons également calculer le résumé de ce fichier plus volumineux.

Ma question est: Existe-t-il un moyen de vérifier si la combinaison des résumés de ces fichiers plus petits est égale au résumé du fichier volumineux?

Par exemple, dire que j'ai une division de fichier en 4 parties avec digests 0xDE, 0xAD, 0xBE, 0xEF

Say, après avoir rejoint, le fichier plus volumineux a digérer 0xC0

Est-il possible de vérifier cette jointure (0xDE, 0xAD, 0xBE, 0xEF) == 0xC0, où 'join' est l'opération magique/formule/algorthm que je recherche?

Répondre

1

Ne pensez pas, désolé
il serait plutôt facile de casser un MD5 si cela était possible

modifier. Si vous voulez dire, puis-je calculer le MD5 de la somme à partir du MD5 des parties = non.
Mais si vous voulez juste confirmer que les pièces sont correctes, vous pouvez toujours calculer le MD5 de chaque pièce, puis le MD5 de l'ensemble de ces MD5.
Évidemment, pour le vérifier, vous devez effectuer la même séquence, donc quelqu'un qui n'a que le fichier complet devrait le diviser pour faire la même vérification.

+0

fissure un MD5 .. comment ça? – PoorLuzer

+0

il vous permettrait de construire des dictionnaires de blocs avec MD5 connu, puis si vous souhaitez générer un certain résumé pour un faux message, vous auriez une bibliothèque de blocs de remplissage arbitraires à ajouter. –

+0

MD5 ne doit plus être utilisé pour des hachages sécurisés, il a été démontré comme non sécurisé depuis quelques années maintenant. – skaffman

0

Si vous ne voulez pas joindre les fichiers, vous pouvez les transmettre un par un à l'algorithme de hachage en utilisant la méthode TransformBlock. En appelant TransformFinalBlock, vous obtenez le résultat.

Questions connexes