逐段查看依据 · 每个结论都标明验证范围
能解码,不代表已验证。
读出 Header 和 Payload,只能证明三段式 JWS/JWT 的前两个 Base64URL 段可以解析为 JSON。真正的信任还需要固定允许的算法、匹配的密钥、有效的时间窗口,以及符合应用配置的 issuer 与 audience。
Header
{ "alg": "HS256", "typ": "JWT" }Payload
{ "sub": "123", "aud": "devsexy-api", "exp": 1766073600 }Signature
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c信任阶梯
每一级只证明紧接着的那件事。
Compact 结构
正好包含三个非空的 URL-safe 段
JSON 已解码
Header 与 Claims 可读,但尚不可信
签名已校验
在预期算法和正确密钥下证明完整性
时间有效
按明确的时钟偏差策略检查 exp / nbf
Issuer 与 Audience 匹配
应用配置与对应 Claims 一致
业务策略通过
角色、租户、scope、nonce 与撤销规则均满足要求
算法 / 密钥契约
Token 里的 alg 是输入,不是安全策略。
HS256 / 384 / 512共享密钥签发方与校验方持有同一密钥
此工作台支持
RS256 / PS256RSA 公钥私钥签名,公钥校验
请使用生产级 JOSE 库
ES256 / EdDSA椭圆曲线 / EdDSA 公钥密钥类型和曲线必须匹配
请使用生产级 JOSE 库
none无需密钥不提供完整性保护
除非隔离协议明确允许,否则拒绝
NumericDate 时钟
JWT 时间 Claims 使用 Unix 时间戳秒数。
当前 · 1,716,073,600
iat1,716,070,000签发于 60 分钟前nbf1,716,072,700已生效 15 分钟exp1,716,075,400将在 30 分钟后过期把毫秒误当秒会让日期偏到数万年以后。时钟偏差应是校验器中明确且有限的容差设置,不能成为忽略过期时间的理由。
Issuer 与 Audience 检查点
即使签名有效,签发方不受信任或受众不匹配也必须拒绝。
isshttps://id.example.test/与受信任的签发方精确匹配
aud["devsexy-api", "account"]按应用策略包含要求的 audience
tenantproduction-eu由业务策略检查的私有 Claim
scopetools:read授权决策仍由资源服务器负责
Debugger 风险台
把调试器当作可能接触 Bearer Token 的敏感工作台。
Bearer Token 泄漏
高风险URL、截图、日志、剪贴板历史和工单中的 Token 都可能被重放。
弱 HMAC 密钥
高风险过短或可猜测的共享密钥可能被离线暴力破解。
算法混淆
严重必须固定算法 allowlist,绝不能让攻击者控制的 alg 决定校验策略。
不可信的 kid / JWK URL
高风险Header 中的密钥提示不能触发不受限制的文件读取或网络请求。
浏览器内密钥处理
需评估DevSexy 不会上传密钥;仍应只用测试密钥,生产签名密钥应留在受控基础设施。