Aller au contenu principal

7.3.3. Cryptographie symétrique

7.3.3. Cryptographie symétrique

Ce document permet d’appliquer à la fois la cryptographie asymétrique et symétrique aux messages HTTP. Par nature, les méthodes symétriques exigent que la même matière de clé soit connue du signataire et du vérificateur. Cela signifie en pratique qu’un vérificateur est capable de générer une signature valide, puisqu’il a accès à la même matière de clé. Un attaquant capable de compromettre un vérificateur pourrait alors usurper l’identité du signataire.

Dans la mesure du possible, il convient d’utiliser des méthodes asymétriques ou des mécanismes d’accord de clé sécurisés pour éviter ce type d’attaque. Lorsque des méthodes symétriques sont utilisées, la distribution de la matière de clé doit être protégée par l’ensemble du système. Une technique consiste à employer des modules cryptographiques distincts qui séparent le processus de vérification (et donc la matière de clé) du reste du code, minimisant la surface vulnérable. Une autre technique est l’usage de fonctions de dérivation de clé permettant au signataire et au vérificateur de convenir de clés uniques par message sans avoir à partager directement les valeurs de clé.

De plus, si des algorithmes symétriques sont autorisés dans un système, il faut prendre un soin particulier pour éviter les attaques par rétrogradation de clé (section 7.3.6).