JSON Web Encryption (JWE) | |
Abbreviation | JWE |
---|---|
Status | Proposed |
Year started | 16 January 2012 |
First published | 16 January 2012 |
Latest version | May 2015 |
Organization | IETF |
Series | JOSE |
Authors |
|
Domain | Encryption, authentication |
Website |
datatracker |
JSON Web Encryption (JWE) is an IETF standard providing a standardised syntax for the exchange of encrypted data, based on JSON and Base64. [1] It is defined by RFC 7516. Along with JSON Web Signature (JWS), it is one of the two possible formats of a JWT ( JSON Web Token). JWE forms part of the JavaScript Object Signing and Encryption (JOSE) suite of protocols. [2]
In March 2017, a serious flaw was discovered in many popular implementations of JWE, the invalid curve attack. [3]
One implementation of an early (pre-finalised) version of JWE also suffered from Bleichenbacher’s attack. [4]
JWE is a means of representing encrypted content using JSON data structures.
Beyond XML Encryption, the recent JSON Web Encryption (JWE) specification prescribes PKCS#1 v1.5 as a mandatory cipher. This specification is under development and at the time of writing there existed only one implementation following this specification. We verified that this implementation was vulnerable to two versions of the Bleichenbacher's attack: the direct attack based on error messages and the timing-based attack.