JOSE
JOSE 是什么?
JOSEJavaScript Object Signing and Encryption,IETF 标准家族(RFC 7515-7520 和 8037),用 JSON 表示已签名和加密的数据。
JOSE 是 IETF 一系列规范的总称,为基于 JSON 的协议提供密码学保护。它涵盖 JWS(RFC 7515)定义签名、JWE(RFC 7516)定义加密、JWK 和 JWK Set(RFC 7517)表示密钥、JWA(RFC 7518)规定 RS256、ES256、EdDSA、A256GCM 等算法标识、JWT(RFC 7519)定义基于声明的令牌,以及 RFC 7520 提供的 JSON 加密实践指南。RFC 8037 加入了 Ed25519 与 X25519。JOSE 是 OAuth 2.0、OpenID Connect、SaaS API 认证和 W3C 可验证凭证等的基础。实现者需要避免历史上的 alg:none 攻击、RS256 与 HS256 之间的密钥混淆问题,以及 CVE-2015-9235 等案例中出现的 encrypt-then-MAC 与 AEAD 陷阱。
● 示例
- 01
OpenID Connect ID Token 是一个用 RS256 或 ES256 签名的 JWT(JWS 紧凑序列化)。
- 02
OAuth 2.0 的 DPoP 凭证是一段绑定客户端密钥的、生命周期短的 JWS 紧凑 JWT。
● 常见问题
JOSE 是什么?
JavaScript Object Signing and Encryption,IETF 标准家族(RFC 7515-7520 和 8037),用 JSON 表示已签名和加密的数据。 它属于网络安全的 密码学 分类。
JOSE 是什么意思?
JavaScript Object Signing and Encryption,IETF 标准家族(RFC 7515-7520 和 8037),用 JSON 表示已签名和加密的数据。
如何防御 JOSE?
针对 JOSE 的防御通常结合技术控制与运营实践,详见上方完整定义。
JOSE 还有哪些其他名称?
常见的别称包括: JavaScript Object Signing and Encryption。