编码与安全指南
JWT 容器:区分 JWS 签名与 JWE 加密
识别紧凑序列化结构,避免把加密 JWT 当作普通三段 Token 解码。
先用段数定位格式
紧凑 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 库,逐层验证后才能信任声明。