Aller au contenu
ecdsa.com

alg (en-tête JOSE de l’algorithme)

Le paramètre d’en-tête JOSE qui désigne l’algorithme de signature ou de MAC d’un JWS (par exemple ES256) ou l’algorithme de gestion des clés d’un JWE (par exemple RSA-OAEP-256), enregistré par la RFC 7518 et des RFC ultérieures.
Autres graphiesalg headeralgorithm header parameterenc

Dans un JWS, alg détermine comment la signature est calculée : HS256, RS256, PS256, ES256, ES256K, Ed25519, etc., ou none. Dans un JWE, il détermine comment la clé de contenu est transmise, tandis que enc désigne l’algorithme de chiffrement du contenu. Les valeurs sont des chaînes sensibles à la casse, inscrites au registre IANA « JSON Web Signature and Encryption Algorithms ».

Tant que la signature n’est pas vérifiée, l’en-tête est contrôlé par l’attaquant : le vérificateur ne doit donc pas le laisser choisir l’algorithme. Configurez l’algorithme accepté (idéalement un seul) pour chaque clé et rejetez tout le reste (RFC 8725 §3.1). Des bibliothèques qui aiguillent sur alg ont déjà accepté none ou utilisé une clé publique RSA comme secret HMAC.

La RFC 9864 (2025) rend obsolètes les identifiants « polymorphes » comme EdDSA, dont le sens dépend de la clé, au profit d’identifiants entièrement spécifiés comme Ed25519, afin que le nom de l’algorithme suffise à déterminer l’opération.

Normes et références

Tous les termes