Bonjour !
Ça c'est fait. Ce n'était qu'une question de temps.
Announcing the first SHA1 collision (article en anglais).
Jamais les MD5SUMS, SHA1 SHA256, SHA512, SHA1024, SHA1048576 ne garantiront authenticité des fichiers plus longs que la clé.
C'est logique.
Deux fichiers (plus longs que la clé) qui ont la même somme de contrôle, ne sont pas forcément identiques.
Dit autrement, jamais les sommes de contrôles MD5, SHA1 SHA256, SHA512, SHA1024, SHA1048576 ne garantiront l'exactitude d'un fichier plus gros que la somme de contrôle. Les probabilités de collisions sont faibles, mais pas nulles. Une preuve de plus après l'algorithme de création de collision de sommes MD5.
Mais on est certain que deux fichiers qui n'ont pas la même somme de contrôle sont obligatoirement différents.
J'essayais déjà d'expliquer ceci il y a quelques mois.
Ensuite, télécharger une image ISO qui a la bonne somme de contrôle ne garantit pas l’authenticité, car statistiquement, il y a très peu de chance que des erreurs de transmissions retombent sur la même clé. Mais celui qui a la puissance d'envoyer sur le réseau un fichier qui a les mêmes sommes de contrôle avec la même longueur à l'octet près, peut passer inaperçu.
À part l'état et quelques privés, je ne pense pas que nous risquions grand chose.
Enfin, le générateur de collision MD5 a besoin d'un peu moins d'une heure avec un Pentium 4 à 3GHz.
PS : En 2000, sur un processeur MC68030 à 50 MHz, il fallait 30 minutes pour résoudre 1000 équations à 1000 inconnues réelles avec une précision de 10⁻⁶.
Je n'ai pas programmé l'algorithme du générateur de collisions MD5.
Mais le principe d'un algorithme de générations de collisions repose sur la lecture de l'algorithme de somme de contrôle. Et même si les algorithmes n'étaient pas publiés, le code machine se désassemblerait pour comprendre l'algorithme qui créée la somme.
À partir de là, je ne sais pas trop, si ce sont les génies informatico-mathématiciens qui génèrent des algorithmes de collisions… (Cas du MD5) ou si plusieurs fichiers analysés sont enregistrés avec leur clé respective, puis comparaisons des différentes clés (ce qui semble le cas de l'article en anglais plus haut concernant le SHA-1).