This recipe will present an advanced topic related to JWT architecture, which is JSON Web Encryption (JWE). As you have seen before in the previous recipes of this chapter, we were using the JSON Web Signature (JWS) approach, which promotes integrity protection. With JWE, we start providing confidentiality to JWT tokens issued by the Authorization Server. This recipe is important to learn so you can add another layer of security for your application.
To run this recipe, you will need to create a Spring Boot application to configure the Authorization Server using Java 8, MySQL, Maven, and the library Nimbus JOSE + JWT. The other dependencies will be described in the How to do it... section.