Question:
Est-il sûr d'utiliser MD5 pour vérifier l'intégrité de petits fichiers (moins de 15 Ko)?
thebunnyrules
2018-05-29 08:21:04 UTC
view on stackexchange narkive permalink

Je sais que la collision pour MD5 a été documentée depuis les années 90 et qu'il a été démontré que les certificats numériques basés sur MD5 étaient complètement compromis en 2010, mais quelle est l'efficacité de MD5 pour garantir que de petites quantités de données n'ont pas été falsifiées ?

J'ai quelques petits fichiers texte de quelques pages (disons 15kb). J'utilise SHA-256 sur eux mais il serait beaucoup plus pratique de pouvoir utiliser MD5 à la place.

Dans quelle mesure MD5 serait-il sécurisé en tant que condensé de hachage pour ces petits fichiers texte de 15 Ko? Une partie malveillante pourrait-elle produire des collisions pour une si petite quantité de données ou est-ce que la petite taille rend cette tâche difficile?

Pourquoi?Pourquoi voudrai-tu ceci?Pourquoi MD5 serait-il "beaucoup plus pratique"?
Voir aussi [Un hachage cryptographique ou une somme de contrôle identique pour deux fichiers signifie-t-il qu'ils sont identiques?] (Https://superuser.com/q/1324629/53590) sur [su].
Est-ce que secure est le mot que vous recherchez?Ou voulez-vous dire fiable?Il n'est probablement pas nécessaire de se concentrer sur la sécurité pour cette tâche.
2004 n'est pas exactement les années 90.
Les petits fichiers ne sont pas sûrs.Le [certificat CA non autorisé de 2008] (https://www.win.tue.nl/hashclash/rogue-ca/) a utilisé une collision MD5 sur une partie "à signer" de seulement 927 octets, et n'avait besoin que d'un contrôlede 204 de ces octets (le "bloc de collision") pour créer la collision.
En dehors de toute autre chose, gardez à l'esprit que si MD5 est plus pratique que SHA-256, vous avez déjà un problème.Peut-être que ce n'est pas un problème, vous pouvez faire quelque chose sur vous-même (par exemple, peut-être que vous devez communiquer avec quelque chose qui utilise un ancien protocole avec MD5 intrinsèquement lié, ou un morceau de matériel avec MD5 accéléré mais pas SHA-256).Mais en plus de se demander s'il faut se rendre et utiliser MD5, il vaut également la peine de se demander si vous pouvez attaquer les contraintes qui tentent de vous imposer MD5 :-)
Les réponses ci-dessous sont assez techniques et éclairantes, mais elles ne changent pas les résultats.MD5 est obsolète et ne doit pas être utilisé dans de nouvelles applications nécessitant un hachage cryptographique.Cela est vrai depuis près de 20 ans, si longtemps qu'on peut maintenant dire la même chose de son successeur SHA1.Si par «pratique» vous faites référence à la sortie 128 bits, il vaut mieux tronquer un hachage moderne à 128 bits que d'utiliser MD5.Ne pas définir ce que vous entendez par «pratique» rend cette question probablement une instance d'un [problème X-Y] (https://meta.stackexchange.com/q/66377/141193)
@James K Polk En utilisant un hachage tronqué sha2, sha3 peut être intéressant mais la troncature ne les rendrait-ils pas aussi faibles que le md5?
@kaspered de l'entrée wiki sur md5 "En 1996, Dobbertin a annoncé une collision de la fonction de compression de MD5".Ce n'est même pas près de 2004.
@Gordon Davidson: D'après ce que j'ai compris de la réponse de Forest ci-dessous: une collision n'est une menace que si le fichier n'a pas été créé par moi et que je n'étais pas la personne qui a pris le hachage md5 initial.Si quelqu'un doit prendre mon fichier et le remplacer par un fichier avec le même hachage (une attaque de pré-image), ce serait beaucoup plus difficile.Y a-t-il quelque chose qui me manque ou y a-t-il quelque chose qui ne va pas avec la réponse elle-même?Si c'est le cas, veuillez expliquer, peut-être directement dans les commentaires de la réponse afin que Forest puisse répondre.
Non, tronquer le hachage ne le rendra pas * aussi faible * que MD5.Il sera vulnérable aux attaques par collision avec un facteur de travail de l'ordre de 2 ^ 64 étapes, mais c'est le prix à payer pour avoir un hachage de 128 bits.Et il ne semble pas que votre application soit vulnérable aux attaques par collision.Plus important encore, cela aide à empêcher MD5 de polluer davantage l'écosystème cryptographique.
Eh bien, puisque vous mettez si poétiquement, comment puis-je dire non ...
@thebunnyrules Vous êtes toujours en danger si un attaquant peut contrôler * une partie * d'un fichier (et prédire ce qui précède la partie qu'il contrôle).C'est essentiellement la situation avec la collision cert: une autorité de certification légitime a créé le certificat, mais l '«attaquant» a pu contrôler des parties du certificat généré et prédire le reste;C'était assez.Dans votre cas, si aucun attaquant ne peut contrôler * une partie de * l'un des fichiers, les attaquants sont coincés avec une seconde attaque de pré-image, à laquelle MD5 n'est pas connu pour être significativement faible.Mais je préfère quand même tronquer un meilleur hachage.
Tout comme @GordonDavisson le dit, un attaquant n'a besoin que d'influencer les deux fichiers, pas nécessairement d'être le seul auteur.Bien que MD5 soit techniquement sûr pour un modèle de menace limité, c'est toujours une bonne idée de passer à quelque chose de mieux.Après tout, MD5 a une collision 2 ^ 18, alors que quelque chose comme SHA-256 tronqué à 128 bits nécessiterait 2 ^ 64 pour une collision.
Cinq réponses:
forest
2018-05-29 09:58:51 UTC
view on stackexchange narkive permalink

La taille de l'entrée n'est pas pertinente. En fait, à cause du paradoxe de l'anniversaire, vous n'avez pas besoin de plus que la taille du hachage pour garantir les collisions. La meilleure façon d'éviter les collisions est d'utiliser un hachage plus fort qui ne leur est pas vulnérable, tel que SHA-2. Cependant, vous décrivez une attaque plus difficile qu'une attaque par collision, appelée attaque de pré-image , contre laquelle MD5 est à l'abri.

Il existe trois types d'attaques * qui aboutissent à avoir deux fichiers avec le même condensé:

  • 1ère préimage - Trouvez une entrée qui résout un hachage spécifique.

  • 2e préimage - Modifiez une entrée sans changer le hachage résultant.

  • Collision - Trouvez deux entrées distinctes qui ont le même hachage.

On les appelle des attaques quand elles peuvent être effectuées plus efficacement que par une recherche par force brute. Les collisions peuvent toujours se produire naturellement, et en fait, elles sont garanties avec une quantité non négligeable d'entrées en raison du principe du casier, mais les hachages sont conçus pour rendre difficile intentionnellement effectuer. Pour un hachage avec une sortie de la taille de MD5, le risque d'une collision accidentelle aléatoire est extrêmement faible. Même si vous hachez 6 milliards de fichiers aléatoires par seconde , cela prendrait 100 ans avant d'avoir 50% de chances que deux hachages entrent en collision. MD5 est excellent pour détecter une corruption accidentelle.

Une fonction de hachage n bits forte est conçue pour avoir un niveau de sécurité de 2 n contre les 1ère et 2ème attaques de pré-image et un niveau de sécurité de 2 n / 2 contre les attaques par collision. Pour un hachage de 128 bits comme MD5, cela signifie qu'il a été conçu pour avoir un niveau de sécurité de 2 128 contre les pré-images et de 2 64 contre les collisions. À mesure que les attaques s'améliorent, le niveau de sécurité réel qu'elles peuvent fournir est progressivement réduit.

MD5 est vulnérable à une attaque de collision nécessitant l'équivalent de seulement 2 18 invocations de hachage au lieu des 2 64 à exploiter. À moins que l'attaquant ne génère les deux fichiers, il ne s'agit pas d'une attaque par collision. Un attaquant qui possède un fichier et veut le modifier de manière malveillante sans le le changement de hachage nécessiterait de monter une deuxième attaque de pré-image, ce qui est totalement irréalisable contre MD5 avec la technologie moderne (la meilleure attaque a une complexité de 2 123,4 sup >, par rapport au maximum théorique de MD5 de 2 128 ). Les attaques par collision sont pertinentes dans différentes situations. Par exemple, si vous recevez un exécutable créé par un attaquant sans porte dérobée, vous pouvez le hacher et enregistrer le hachage. Cet exécutable pourrait ensuite être remplacé par une version backdoor, mais le hachage serait le même que celui bénin! C'est également un problème pour les certificats où quelqu'un pourrait soumettre un certificat pour un domaine qu'il possède, mais le certificat entrerait intentionnellement en collision avec un pour un domaine qu'il ne possède pas.

Il est sûr d'utiliser MD5 pour vérifier les fichiers tant que le hachage stocké n'est pas soumis à la falsification et peut être considéré comme correct, et tant que les fichiers vérifiés n'ont pas été créés (ou influencés!) Par un attaquant. Cependant, il peut toujours être judicieux d'utiliser un hachage plus puissant, simplement pour éviter qu'une attaque de préimage pratique potentielle contre MD5 à l'avenir ne mette en danger vos données. Si vous voulez un hachage moderne très rapide mais toujours sécurisé sur le plan cryptographique, vous pouvez consulter BLAKE2.

* Bien qu'il existe d'autres attaques contre MD5 telles que les attaques d'extension de longueur qui affectent tous les hachages Merkle – Damgård comme mentionné par @LieRyan, elles ne sont pas pertinentes pour vérifier l'intégrité d'un fichier par rapport à un hachage correct.

Une variante de l'attaque par collision appelée attaque par collision avec préfixe choisi est capable de prendre deux messages arbitraires (préfixes) et de trouver deux valeurs qui, lorsqu'il est ajouté à chaque message, il en résulte un condensé de collision. Cette attaque est plus difficile à réaliser qu'une attaque de collision classique. Comme l'attaque d'extension de longueur, cela ne s'applique qu'aux hachages Merkle – Damgård.

Il faut ajouter qu'en plus du fait qu'une seconde attaque de pré-image est irréalisable en soi, une seconde attaque de pré-image _meaningful_ est encore plus difficile.Vous devez non seulement trouver _any_ blob qui produit le même hachage (c'est une tâche complexe 2 ^ 123), mais un qui est plausible (c'est-à-dire dans ce cas un fichier texte lisible, significatif et non charabia).Maintenant, ajoutez la longueur du fichier à votre hachage pour le renforcer davantage (rendant par exemple impossible l'ajout de caractères non imprimés), et je voudrais vraiment voir quelqu'un retirer celui-là.
@Damon Vous n'avez pas besoin d'ajouter la longueur du fichier à un hachage.En fait, les hachages Merkle – Damgård (dont MD5 fait partie) codent la longueur des données à hacher dans le bloc final.En outre, restreindre les types d'entrée ne rend pas une attaque de pré-image beaucoup plus difficile.Cela signifie simplement que vous êtes plus limité dans les bits que vous pouvez basculer, ce qui n'est vraiment pas une limitation tant que vous pouvez basculer de quelques dizaines de bits.
Que voulez-vous dire exactement en disant que SHA-2 n'est "pas vulnérable" aux collisions?
@forest: Je ne suis pas sûr que vous ayez raison à 100%.S'il est vrai que les hachages M-D codent la longueur des données, vous pouvez néanmoins hacher «foo» et «foo2» très bien, et ils produiront tous deux un blob de 128 bits qui est indépendant de la longueur du message d'origine.Si "foo" et "foo2", ou peut-être "foo1234" se heurtent, et c'est tout ce que vous voulez à la fin, vous avez une attaque qui fonctionne.Si, cependant, il est _explicitement_ connu que "foo" a 3 lettres (pas 4, ni 6, ni 8), alors c'est difficile à réussir.
@Damon Il est explicitement connu que "foo" a 3 lettres (ou plutôt 3 × 8 = 24 bits).Voir [RFC 1321] (https://www.ietf.org/rfc/rfc1321.txt) § 3.2.Cela signifie qu'il n'est pas indépendant de la longueur d'origine._H (m || longueur (m)) _ ne vous donne aucun avantage sur _H (m) _.
@forest: Je suppose qu'alors les gars qui ont piraté Flickr en 2009 étaient tous des menteurs, car il n'existe pas d'attaque d'extension de longueur sur MD5.Mon mauvais, j'ai mal compris l'approche.
@Damon Je pense que vous comprenez mal comment une attaque d'extension de longueur fonctionne.Il y a une [réponse utile] (https://crypto.stackexchange.com/a/3979/54184) sur le site Cryptography qui explique pourquoi c'est possible malgré le rembourrage.Vous pouvez l'empêcher en _prépendant_ une valeur de longueur cependant (ou en utilisant une construction conçue pour résister à de telles attaques telles que HMAC), mais simplement "encoder explicitement la longueur" n'est pas suffisant.
@chrylis Je voulais dire que tous les hachages de la famille SHA-2 ne sont soumis à aucune attaque connue qui rend les collisions beaucoup plus faciles à construire que via une recherche exhaustive.
Il ne suffit pas que les fichiers ne soient pas «créés par un attaquant» - même si un attaquant ne contrôle qu'une partie des fichiers, ils peuvent toujours forcer une collision.
Pour info, l'attaque présumée de pré-image sur MD5 a un rapport prix / performance bien pire que les attaques génériques;c'est au mieux une observation théoriquement intéressante, pas même une attaque théorique.Mais je déconseille fortement de chicaner sur les détails des différents types d'attaques sur MD5 à un public général sans l'expérience nécessaire pour reconnaître à quel point la conception de protocole est difficile ou pour reconnaître comment les collisions ou les extensions de longueur peuvent être exploitées pour la falsification.Une réflexion naïve à ce sujet amène les gens à faire des choix irresponsables comme l'utilisation de MD5 dans rsync, et les rend résistants à la résolution des problèmes.
Par exemple, l'attaquant n'a pas à produire les deux fichiers.Les certificats MD5 ont été falsifiés _en pratique_ par un attaquant qui pouvait _prédire_ des parties des fichiers qui n'étaient pas sous son contrôle et contrôler _ certains_ des fichiers.En l'absence d'un modèle beaucoup plus spécifique de ce que sont les actions de l'utilisateur légitime et les pouvoirs de l'adversaire, ce conseil est susceptible de causer des ennuis à quelqu'un s'il ne prend pas le temps d'étudier la conception du protocole et d'en déterminer les conséquences pour lui-même.
MechMK1
2018-05-29 14:26:50 UTC
view on stackexchange narkive permalink

Cela dépend de ce contre quoi vous voulez vous défendre

La sécurité n’est jamais un jeu unique. Si c'était le cas, il n'y aurait pas 12941 algorithmes de hachage différents. Au lieu de cela, vous devez comprendre que chaque mesure de sécurité vous protège contre un type d'attaque spécifique. Vous mettez un mot de passe dans votre ordinateur pour vous défendre contre des personnes aléatoires qui y accèdent, pas parce que c'est tellement amusant de taper whereD1DweG0sowron6 chaque fois que vous vous connectez.

En ce qui concerne les algorithmes de hachage, vous pouvez grossièrement les classer comme "hachages cryptographiques" et "hachages non cryptographiques". Les algorithmes de hachage cryptographique sont conçus pour résister à un certain nombre d'attaques, tandis que les hachages non cryptographiques sont conçus pour être aussi rapides que possible. 1 MD5, par exemple, est considéré comme un hachage cryptographique, mais si cassé qu'il est utilisable uniquement comme hachage non cryptographique.

Quand utiliser un hachage non cryptographique

Si votre objectif est de détecter des retournements de bits lors de la copie d'un fichier d'un emplacement à un autre ( disons, une clé USB à un ordinateur portable), alors MD5 est absolument le bon choix. J'irais même jusqu'à dire que tout hachage rapide et non cryptographique est bon. Lorsque vous copiez des fichiers, vous n'avez pas vraiment à craindre les interférences des attaquants. Si vous êtes paranoïaque à propos de la possibilité pour les pirates de modifier votre noyau, alors l'ajout de hachages ne résoudra pas vos problèmes.

Vérifier l'intégrité des fichiers avec les interférences des attaquants

Si vous avez l'intention de les signer et de les publier fichiers, alors un attaquant pourrait avoir la capacité de créer un fichier éventuellement légitime avec le même hachage - ce qui signifie que votre signature est tout aussi valide sur le fichier malveillant.

Un exemple

Allons dites que votre message d'origine m1 ressemble à ceci:

Je déclare par la présente que les règles du lapin!

Vous utilisez votre fonction de hachage h (m1) et obtenez le condensé d1 . Ensuite, vous signez le condensé d1 et obtenez une signature s1 .

Vous publiez ensuite votre message m1 , votre signature s1 et votre fonction de hachage h().

I pourrait être l'attaquant dans le scénario et créer un message m2 qui a exactement le même hachage dans la fonction de hachage choisie:

Il est publiquement connu que les chiens valent mieux que des lapins à tous égards ...

Puisque h (m1) = h (m2) = d1 , la signature s1 est valide pour votre m1 original et mon m2 malveillant.

Afin de vous défendre contre de telles attaques, il est vital de choisir un algorithme de hachage fort avec haute résistance aux collisions. Cela signifie qu'il devient très difficile pour moi de trouver un m2 h (m2) = h (m1) .

De bons choix incluraient SHA256 et SHA512, ainsi que des tonnes d'autres. Il semble que tout le monde a des fonctions de hachage non grand public préférées, mais SHA256 et SHA512 ont un support très répandu et il vous sera difficile de trouver un système qui ne prend pas en charge ces hachages. Et comme vos fichiers sont très petits, le calcul du hachage devrait être presque instantané.

Par exemple, sur ma machine à 800 MHz, le calcul du hachage SHA512 d'un fichier aléatoire de 16k a pris 3 ms, donc même sur un grille-pain, cela devrait être relativement rapide.


1 Vous pouvez voir la même chose avec les générateurs de nombres aléatoires. Les PRNG cryptographiques visent à fournir des nombres aléatoires qui sont vraiment difficiles à deviner, tandis que les PRNG non cryptographiques visent à donner simplement des nombres qui semblent aléatoires à première vue et le font rapidement.

Bien que rien de ce que vous dites ne soit incorrect, vous ne mentionnez MD5 nulle part dans la réponse.Cette question concerne MD5 et la vérification de l'intégrité des fichiers.MD5 est AFAIK parfaitement adapté à cet effet (avec la mise en garde que parfois des fissures dans la conception de l'algorithme suggèrent d'autres défauts possibles).
L'attaque que vous décrivez est une attaque de première pré-image.Le scénario où une attaque par collision serait pertinente serait si quelqu'un d'autre vous donnait un programme et vous demandait de vérifier qu'il n'y avait rien de mal dedans et de publier ou signer un message disant "le programme avec hachage __ est sûr.".Un attaquant pourrait (en utilisant une attaque par collision) créer deux programmes identiques à l'exception du contenu d'une chaîne littérale, et faire en sorte que (1) un programme soit bénin et l'autre malveillant, et (2) les deux programmes hacheraientà la même valeur.
@SteveSether Je mentionne MD5 lorsque je parle de hachages non cryptographiques.S'il est uniquement utilisé pour vérifier l'intégrité du fichier sans interférence de l'attaquant, MD5 peut être utilisé en toute sécurité, mais pas le meilleur choix.
@supercat En effet, mais c'était simplement un exemple de ce à quoi pourrait ressembler une interférence d'un attaquant.Dans les deux cas, c'est une bonne idée d'utiliser un algorithme de hachage cryptographique fort, comme ceux que j'ai suggérés
Je vote défavorablement car la réponse implique que MD5 ne convient pas aux hachages cryptographiques.Comme le souligne la forêt ci-dessus, il est parfaitement acceptable pour CERTAINS objectifs cryptographiques, mais pas pour l'attaque par collision mentionnée par @supercat et la forêt.
@DavidStockinger: Je n'ai pas profilé les performances de MD5 par rapport aux autres hachages, mais dans les cas où les performances comptent, un hachage plus rapide qui ne serait pas sécurisé dans tous les cas d'utilisation mais qui est sécurisé dans celui qui compte, peut être meilleur qu'un hachage plus lentqui serait également sécurisé dans les cas d'utilisation non pertinents.
Lie Ryan
2018-05-29 09:11:45 UTC
view on stackexchange narkive permalink

La taille du fichier ne fait aucune différence. MD5 est basé sur la construction Merkle – Damgård, qui est vulnérable à l ' attaque par extension de longueur. 15kb est suffisant pour faire l'attaque d'extension de longueur. Il existe de nombreuses collisions et méthodes connues pour générer des collisions MD5 d'une longueur de quelques centaines d'octets, et une fois qu'une collision de base est trouvée, être vulnérable à l'extension de longueur signifie qu'elles peuvent être utilisées pour générer un nombre arbitraire de collisions supplémentaires.

Comment l'attaque d'extension de longueur est-elle pertinente pour garantir que les fichiers n'ont pas été falsifiés?Toutes les collisions arbitraires nécessitent que les fichiers commencent réellement par une collision, après quoi ils peuvent être étendus davantage.Il ne permet pas de remplacer un fichier arbitraire et bénin par un fichier malveillant avec le même hachage.
L'explication de l'attaque d'extension de longueur à laquelle vous créez un lien sur Wikipédia ne correspond pas du tout à cette situation, car il est peu probable qu'elle produise un fichier compromis qui aurait un hachage / matching /.
L'attaque d'extension de longueur est conçue pour se prémunir contre le scénario selon lequel une personne qui connaît le hachage d'un message mais pas son contenu peut déterminer quel serait le hachage du message si un contenu supplémentaire spécifique était ajouté.Donner à l'attaquant un moyen de déterminer quelle serait la valeur de hachage d'un fichier ne semble pas être une grande vulnérabilité dans le scénario de l'OP.
Peter Green
2018-05-29 22:36:24 UTC
view on stackexchange narkive permalink

La taille en soi n'est pas extrêmement pertinente, les données de collision peuvent être aussi petites qu'un seul bloc.

Cependant, vous êtes beaucoup plus en sécurité avec une collection de fichiers texte qu'avec une collection de fichiers PDF ou similaire.

Pourquoi? car les résultats d'une attaque par collision aboutissent généralement à ce que les deux fichiers de la paire contiennent des "déchets aléatoires". Dans un format riche, ces déchets d'apparence aléatoire peuvent être cachés de la vue afin que l'attaquant puisse tromper l'administrateur de la collecte en acceptant l'un de leurs paires de fichiers en collision.

Dans un fichier texte, cependant, le contenu est visible par tous.

Ceci est partiellement incorrect.Une attaque par collision MD5 n'a pas besoin d'impliquer le retournement de bits aléatoires.Vous pouvez facilement limiter les bits que vous avez l'intention de retourner à ceux qui ne font que changer les caractères ASCII imprimables en caractères non imprimables (tels que ENQ ou NAK).Pour tout fichier ASCII non trivial, il y aura beaucoup de bits que vous pourrez modifier librement sans corrompre visiblement le texte.
Squeamish Ossifrage
2018-05-30 18:40:10 UTC
view on stackexchange narkive permalink

Réponse courte: Non, il n'est pas sûr d'utiliser MD5 pour vérifier l'intégrité des fichiers, courts ou longs.

La réponse complète dépend de le degré de confiance vous êtes dans la distribution des erreurs .

Y a-t-il une chance aléatoire indépendante de retournements de bits à chaque position du fichier en raison de la transmission sur un canal légèrement avec perte comme un port série? Si tel est le cas, vous pouvez utiliser MD5, mais il est beaucoup moins coûteux d'utiliser un CRC, qui est garanti pour détecter un retournement de bit unique, et peut être garanti par des choix standard de polynôme CRC pour détecter tous les nombres impairs de retournements de bits.

Mais vous avez posé une question sur secure , ce qui suggère que vous envisagez des adversaires légèrement plus intelligents qu'un port série avec perte. Si vous n'êtes pas sûr que les erreurs sont des retournements de bits aléatoires indépendants, n'utilisez pas MD5 ou un CRC. Il est très facile pour les adversaires intelligents de trouver des paires de fichiers distincts qui partagent un hachage MD5 commun, ou somme de contrôle CRC, et dans de nombreux scénarios, cela peut permettre à un adversaire de falsifier des documents que votre système MD5 ne détectera pas. La taille du fichier n'est pas pertinente: il est facile de trouver des collisions MD5 dans des fichiers aussi courts que 64 octets, sans aucune limite sur leur longueur.

Il y a un endroit pour discuter des différences techniques entre les attaques de collision, les attaques de pré-image et les attaques de seconde pré-image. Une réponse à une question générale pour savoir s’il est sécurisé de vérifier l’intégrité des fichiers n’est pas un tel endroit. Lorsque vous avez en tête un protocole spécifique dans lequel vous pouvez articuler les pouvoirs précis de l’adversaire et comment les utilisateurs légitimes se comporteront dans le protocole, et vous avez des contraintes d’implémentation qui limiter votre choix de fonctions de hachage afin que vous devez considérer MD5, alors nous pouvons discuter (peut-être sur crypto.SE) s’il est sûr d’utiliser MD5 dans ce protocole pour atteindre la sécurité que vous espérez atteindre contre un tel adversaire.

Mais il serait beaucoup plus simple et plus sûr pour vous d'utiliser simplement SHA-2, ou SHA-3 ou BLAKE2.

Est-ce que le downvoter voudrait expliquer ce avec quoi vous n'êtes pas d'accord dans ce post?


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 4.0 sous laquelle il est distribué.
Loading...