JWS
JWS 是什么?
JWSJSON Web Signature(RFC 7515)是 JOSE 系列中的一种格式,通过对 Base64URL 编码的头部和负载进行数字签名或 MAC,保护任意内容的完整性与来源。
JWS(RFC 7515)对 BASE64URL(header) || '.' || BASE64URL(payload) 的串联进行签名,从而将负载与签名者绑定。紧凑序列化(Compact Serialization)由三个用点号分隔的 Base64URL 段组成,这就是开发者熟知的 JWT 风格令牌;JSON 序列化(通用与扁平)允许多重签名,用于 W3C 可验证凭证以及软件包签名。可用算法在 RFC 7518(HS256、RS256、PS256、ES256、EdDSA)和 RFC 8037 中列出。实现者必须拒绝 alg:none,防止将 RSA 校验偷换为 HMAC 的算法切换攻击,根据可信的 JWK Set 验证 kid,并限制令牌生命周期。常用库包括 jose、node-jose、jjwt、python-jwt。
● 示例
- 01
OAuth 2.0 的 JWT 访问令牌是对声明集合用 RS256 签名的 JWS 紧凑序列化形式。
- 02
签名后的软件更新清单以扁平化 JWS 形式分发,其 kid 指向供应商的 JWK。
● 常见问题
JWS 是什么?
JSON Web Signature(RFC 7515)是 JOSE 系列中的一种格式,通过对 Base64URL 编码的头部和负载进行数字签名或 MAC,保护任意内容的完整性与来源。 它属于网络安全的 密码学 分类。
JWS 是什么意思?
JSON Web Signature(RFC 7515)是 JOSE 系列中的一种格式,通过对 Base64URL 编码的头部和负载进行数字签名或 MAC,保护任意内容的完整性与来源。
JWS 是如何工作的?
JWS(RFC 7515)对 BASE64URL(header) || '.' || BASE64URL(payload) 的串联进行签名,从而将负载与签名者绑定。紧凑序列化(Compact Serialization)由三个用点号分隔的 Base64URL 段组成,这就是开发者熟知的 JWT 风格令牌;JSON 序列化(通用与扁平)允许多重签名,用于 W3C 可验证凭证以及软件包签名。可用算法在 RFC 7518(HS256、RS256、PS256、ES256、EdDSA)和 RFC 8037 中列出。实现者必须拒绝 alg:none,防止将 RSA 校验偷换为 HMAC 的算法切换攻击,根据可信的 JWK Set 验证 kid,并限制令牌生命周期。常用库包括 jose、node-jose、jjwt、python-jwt。
如何防御 JWS?
针对 JWS 的防御通常结合技术控制与运营实践,详见上方完整定义。
JWS 还有哪些其他名称?
常见的别称包括: JSON Web Signature。
● 相关术语
- cryptography№ 565
JOSE
JavaScript Object Signing and Encryption,IETF 标准家族(RFC 7515-7520 和 8037),用 JSON 表示已签名和加密的数据。
- cryptography№ 571
JWE
JSON Web Encryption(RFC 7516)是 JOSE 系列中的一种格式,通过认证加密以及密钥包装或密钥协商,机密地封装载荷。
- cryptography№ 572
JWK
JSON Web Key,定义于 RFC 7517,是用于 JOSE 和 OAuth 系列协议中,表示公钥或私钥的 JSON 对象。
- identity-access№ 574
JWT(JSON Web Token)
紧凑、URL 安全的令牌格式(RFC 7519),携带带签名的 JSON 声明,广泛用作访问令牌、ID 令牌和会话载体。
- identity-access№ 760
OpenID Connect (OIDC)
构建在 OAuth 2.0 之上的身份层,允许客户端通过签名的 ID 令牌验证用户身份并获取基本资料。
- cryptography№ 321
数字签名
一种公钥密码学机制,用于证明消息或文档的真实性、完整性以及不可否认性。
● 参见
- № 225COSE