Bases et applications de la cryptographie
Utiliser comme étiquette de détection des falsifications la valeur de hachage SHA-256(K ‖ m) d'une clé secrète K suivie d'un message m est considéré comme dangereux. Quelle en est la raison ?
- ASi l'étiquette et la longueur de l'entrée sont connues, on peut calculer sans connaître K l'étiquette d'un message obtenu en ajoutant des données après m
- BOn connaît une méthode efficace pour retrouver, à partir de la sortie de SHA-256, la seule partie K placée au début de l'entrée
- CPlacer la clé K devant le message allonge l'entrée, et avec SHA-256 cela rend les collisions plus faciles à trouver
Afficher la réponse et l'explication
Réponse : A. Si l'étiquette et la longueur de l'entrée sont connues, on peut calculer sans connaître K l'étiquette d'un message obtenu en ajoutant des données après m
Dans une fonction de hachage à construction de Merkle–Damgård comme SHA-256, la valeur de hachage produite est exactement l'état interne après le traitement du dernier bloc. Un attaquant peut donc prendre l'étiquette comme état interne et poursuivre le calcul, obtenant sans connaître K la valeur de hachage d'un message formé de K ‖ m suivi d'un remplissage de forme fixe et de données arbitraires (attaque par extension de longueur). HMAC, qui utilise deux valeurs dérivées de la clé et hache une nouvelle fois la valeur de hachage interne avec la clé, empêche cette attaque. SHA-3 n'est pas vulnérable à cette attaque par construction ; c'est pourquoi KMAC, qui se contente de placer la clé en tête, a aussi été normalisé.
Continuer : 9 autres questions sur Bases et applications de la cryptographie