RFC 7518 - JSON Web Algorithms (JWA)
Date de publication : Mai 2015
Statut : Standards Track (Norme)
Auteur : M. Jones (Microsoft)
Résumé (Abstract)
Cette spécification enregistre les algorithmes cryptographiques et les identifiants à utiliser avec les spécifications JSON Web Signature (JWS), JSON Web Encryption (JWE) et JSON Web Key (JWK). Elle définit plusieurs registres IANA pour ces identifiants.
Table des matières (Contents)
- 1. Introduction
- 1.1 Notational Conventions (Conventions de notation)
- 2. Terminology (Terminologie)
- 3. Cryptographic Algorithms for Digital Signatures and MACs (Algorithmes cryptographiques pour les signatures numériques et les MAC)
- 3.1 "alg" Header Parameter Values for JWS (Valeurs du paramètre d'en-tête "alg" pour JWS)
- 3.2 HMAC with SHA-2 Functions (HMAC avec les fonctions SHA-2)
- 3.3 Digital Signature with RSASSA-PKCS1-v1_5 (Signature numérique avec RSASSA-PKCS1-v1_5)
- 3.4 Digital Signature with ECDSA (Signature numérique avec ECDSA)
- 3.5 Digital Signature with RSASSA-PSS (Signature numérique avec RSASSA-PSS)
- 3.6 Using the Algorithm "none" (Utilisation de l'algorithme "none")
- 4. Cryptographic Algorithms for Key Management (Algorithmes cryptographiques pour la gestion des clés)
- 4.1 "alg" Header Parameter Values for JWE (Valeurs du paramètre d'en-tête "alg" pour JWE)
- 4.2 Key Encryption with RSAES-PKCS1-v1_5 (Chiffrement de clé avec RSAES-PKCS1-v1_5)
- 4.3 Key Encryption with RSAES OAEP (Chiffrement de clé avec RSAES OAEP)
- 4.4 Key Wrapping with AES Key Wrap (Enveloppement de clé avec AES Key Wrap)
- 4.5 Direct Encryption with a Shared Symmetric Key (Chiffrement direct avec une clé symétrique partagée)
- 4.6 Key Agreement with ECDH-ES (Accord de clé avec ECDH-ES)
- 4.7 Key Encryption with AES GCM (Chiffrement de clé avec AES GCM)
- 4.8 Key Encryption with PBES2 (Chiffrement de clé avec PBES2)
- 5. Cryptographic Algorithms for Content Encryption (Algorithmes cryptographiques pour le chiffrement du contenu)
- 5.1 "enc" Header Parameter Values for JWE (Valeurs du paramètre d'en-tête "enc" pour JWE)
- 5.2 AES_CBC_HMAC_SHA2 Algorithms (Algorithmes AES_CBC_HMAC_SHA2)
- 5.3 Content Encryption with AES GCM (Chiffrement du contenu avec AES GCM)
- 6. Cryptographic Algorithms for Keys (Algorithmes cryptographiques pour les clés)
- 6.1 "kty" Parameter Values (Valeurs du paramètre "kty")
- 6.2 Parameters for Elliptic Curve Keys (Paramètres pour les clés de courbe elliptique)
- 6.3 Parameters for RSA Keys (Paramètres pour les clés RSA)
- 6.4 Parameters for Symmetric Keys (Paramètres pour les clés symétriques)
- 7. IANA Considerations (Considérations IANA)
- 8. Security Considerations (Considérations de sécurité)
- 9. References (Références)
Annexes (Appendices)
- Appendix A. Algorithm Identifier Cross-Reference (Annexe A. Référence croisée des identificateurs d'algorithme)
- Appendix B. Test Cases for AES_CBC_HMAC_SHA2 (Annexe B. Cas de test pour AES_CBC_HMAC_SHA2)
- Appendix C. Example ECDH-ES Key Agreement (Annexe C. Exemple d'accord de clé ECDH-ES)
Ressources associées
- Texte officiel : RFC 7518
- Page officielle : RFC 7518 DataTracker
- Errata : RFC Editor Errata
Série de spécifications JOSE
- RFC 7515 - JSON Web Signature (JWS)
- RFC 7516 - JSON Web Encryption (JWE)
- RFC 7517 - JSON Web Key (JWK)
- RFC 7518 - JSON Web Algorithms (JWA) ← Ce document
- RFC 7519 - JSON Web Token (JWT)
Aperçu des algorithmes principaux
Algorithmes de signature numérique et MAC
- HS256, HS384, HS512 - HMAC avec SHA-2
- RS256, RS384, RS512 - RSASSA-PKCS1-v1_5
- ES256, ES384, ES512 - ECDSA
- PS256, PS384, PS512 - RSASSA-PSS
- none - Aucune protection d'intégrité (non recommandé)
Algorithmes de gestion de clés
- RSA1_5, RSA-OAEP, RSA-OAEP-256 - Chiffrement de clé RSA
- A128KW, A192KW, A256KW - Enveloppement de clé AES
- dir - Utilisation directe d'une clé symétrique partagée
- ECDH-ES, ECDH-ES+A128KW, ECDH-ES+A192KW, ECDH-ES+A256KW - Accord de clé ECDH
- A128GCMKW, A192GCMKW, A256GCMKW - Chiffrement de clé AES GCM
- PBES2-HS256+A128KW, PBES2-HS384+A192KW, PBES2-HS512+A256KW - Chiffrement de clé basé sur mot de passe
Algorithmes de chiffrement de contenu
- A128CBC-HS256, A192CBC-HS384, A256CBC-HS512 - AES CBC avec HMAC SHA-2
- A128GCM, A192GCM, A256GCM - AES GCM