RFC 7516 - JSON Web Encryption (JWE)
Published: May 2015
Status: Standards Track
Authors: M. Jones (Microsoft), J. Hildebrand (Cisco)
Abstract
JSON Web Encryption (JWE) represents encrypted content using JSON-based data structures. The JWE cryptographic mechanisms encrypt and provide integrity protection for an arbitrary sequence of octets.
Table of Contents
- 1. Introduction
- 1.1 Notational Conventions
- 2. Terminology
- 3. JSON Web Encryption (JWE) Overview
- 3.1 JWE Compact Serialization Overview
- 3.2 JWE JSON Serialization Overview
- 3.3 Example JWE
- 4. JOSE Header
- 4.1 Registered Header Parameter Names
- 4.2 Public Header Parameter Names
- 4.3 Private Header Parameter Names
- 5. Producing and Consuming JWEs
- 5.1 Message Encryption
- 5.2 Message Decryption
- 5.3 String Comparison Rules
- 6. Key Identification
- 7. Serializations
- 7.1 JWE Compact Serialization
- 7.2 JWE JSON Serialization
- 8. TLS Requirements
- 9. Distinguishing between JWS and JWE Objects
- 10. IANA Considerations
- 11. Security Considerations
- 11.1 Key Entropy and Random Values
- 11.2 Key Protection
- 11.3 Using Matching Algorithm Strengths
- 11.4 Adaptive Chosen-Ciphertext Attacks
- 11.5 Timing Attacks
- 12. References
- 12.1 Normative References
- 12.2 Informative References
Appendices
- Appendix A. JWE Examples
- Appendix B. Example AES_128_CBC_HMAC_SHA_256 Computation
- Appendix C. Example JWE Using AES Key Wrap and AES_128_CBC_HMAC_SHA_256
- Acknowledgements
Related Resources
- Official Text: RFC 7516
- Official Page: RFC 7516 DataTracker
- Errata: RFC Editor Errata