编码与安全指南

JWT 容器:区分 JWS 签名与 JWE 加密

识别紧凑序列化结构,避免把加密 JWT 当作普通三段 Token 解码。

Nav Tools ·

先用段数定位格式

紧凑 JWS 有三段,紧凑 JWE 有五段,JWT 声明可以放在签名或加密结构中。

段数只是格式线索,不是完整有效性检查,不应增删点号强行适配解码器。

JWS: protected.payload.signature
JWE: protected.encryptedKey.iv.ciphertext.tag

只解码可读部分

JWE 受保护头是编码后的 JSON,密文则是加密字节,不是可读的声明 JSON。

对密文做 Base64URL 解码不会获得声明,解密需要约定算法、密钥与认证标签校验。

理解空段仍属于结构

某些 JWE 密钥管理模式的 encrypted-key 段可以为空,但仍保留五段结构。

切分或重建 Token 时不能删除空字段,通用的空字符串过滤可能破坏格式。

使用工具支持的范围

本站 JWT 解码器检查普通三段 Token,HS256 验签器不实现 JWE 解密。

嵌套签名与加密 Token 应使用支持约定处理顺序的 JOSE 库,逐层验证后才能信任声明。

参考资料

← 编码与安全指南