3.3.7. Algorithmes JSON Web Signature (JWS)
3.3.7. Algorithmes JSON Web Signature (JWS)
Si l'algorithme de signature est un algorithme de signature JSON Object Signing and Encryption (JOSE) du registre « JSON Web Signature and Encryption Algorithms » établi par [RFC7518], la définition d'algorithme JWS détermine les algorithmes de signature et de hachage à appliquer pour la signature et la vérification.
Pour la signature et la vérification, la base de signature (Section 2.5) du message HTTP est utilisée comme intégralité de l'« entrée de signature JWS » (JWS Signing Input). L'en-tête JOSE [JWS] [RFC7517] n'est pas utilisé, et la base de signature n'est pas d'abord encodée en Base64 avant d'appliquer l'algorithme. La sortie de la signature JWS est prise comme tableau d'octets avant l'encodage Base64url utilisé dans JOSE.
L'algorithme JWS NE DOIT PAS être « none » et NE DOIT PAS être un algorithme dont l'exigence d'implémentation JOSE est « Prohibited ».
Les valeurs JSON Web Algorithm (JWA) du registre « JSON Web Signature and Encryption Algorithms » ne sont pas incluses comme paramètres de signature. En général, l'algorithme JWS peut être signalé au moyen de JSON Web Keys (JWK) ou d'autres mécanismes courants dans les implémentations JOSE. En effet, les valeurs JWA ne sont pas enregistrées dans le registre « HTTP Signature Algorithms » (Section 6.2), et le paramètre de signature explicite alg n'est donc pas utilisé du tout lorsque des algorithmes de signature JOSE sont employés.