你知道你对 JSON Web Token 的认识存在误解吗
1.前言 JSON Web Token (JWT) 其实目前已经广为软件开发者所熟知了,但是 JOSE (Javascript Object Signing and Encryption) 却鲜有人知道,我第一次知道它是在 Spring Security 的官方文档中,它改变了我对 JWT 的一些认识。目前国内能找到相关中文资料不是太多。所以我觉得有必要归纳一下。 2. JOSE 概述 JOSE 是一种旨在提供在各方之间安全传递声明(claims)的方法的规范集。我们常用的 JWT 就包含了允许客户端访问特定应用下特定资源的声明。 JOSE 制定了一系列的规范来达到此目的。目前该规范还在不断的发展,我们常用的包含以下几个 RFC : JWS(RFC 7515) -JSON Web签名,描述生成和处理签名消息 JWE(RFC 7516) -JSON Web加密,描述了保护和处理加密 消息 JWK(RFC 7517) -JSON Web密钥,描述 Javascript 对象签名和加密中加密密钥的 格式和处理 JWA(RFC 7518) -JSON Web算法,描述了 Javascript 对象签名和加密中使用的 加密 算法 JWT(RFC 7519) -JSON Web令牌,描述以 JSON 编码并由 JWS 或 JWE 保护的声明的表示形式 3. 我们都看错了 JWT 看了对 JWT