如何使用
- 01粘贴令牌;开头的
Bearer 会被容忍。 - 02查看头部徽章(
alg、typ、kid)和解码后的 JSON 段。 - 03在时间声明表中检查
exp、iat、nbf、auth_time 和 updated_at。 - 04打开“显示原始段”,就能看到每部分的起止位置。
示例解读
- RFC 7519 的示例解码为 alg HS256、typ JWT,三段分别为 36 / 86 / 43 个字符,签名为 32 B;
exp = 1300819380 读作 2011-03-22T18:43:00Z,状态为已过期。
- 一个
kid = k-2026、iat = 1760000000、exp = 1760086400 的令牌读作 2025-10-09T08:53:20Z 和 2025-10-10T08:53:20Z;在 2025-10-09T20:00:00Z 评估时处于有效状态,剩余 46,400 秒。
- 毫秒级
nbf 1700000000000 会被修正为 1700000000,读作 2023-11-14T22:13:20Z。
- 带有
alg: none 的头部会被标记,其签名为 0 B;五段式 JWE 会被拒绝,提示“加密令牌,无法读取”。
秒,以及毫秒猜测
JWT 时间声明是从 Unix 纪元起的数值秒。大于 10¹¹ 的值会被当作毫秒并除以 1000,因为有些实现误写了 Date.now();修正后的值会显示出来,原值仍然可见。签名段以文本加字节数的形式返回——解码就是 base64url 加 JSON 解析,仅此而已。
局限
- 不做验证。
- 面板从不检查签名、不获取密钥,也不联系服务器;时间状态为绿色只说明时间声明看起来合理。
- 没有加密。
- 任何拿到令牌的人都能读取负载;用完后请清空输入框中的真实令牌。
解码不等于可信
任何人都能粘贴一个 alg: none 或改写过负载的令牌;面板会照常解码,时间声明看起来也可能有效,因为解码说明不了真实性。请把输出当作来自不可信来源的文本——读声明可以,但签名要交给服务器验证。毫秒修正是便利性启发式,不是规范:低于 10¹¹ 的值原样使用,更大的值会被悄悄除以 1000。
适用场景
从缺陷报告中读取令牌
粘贴报告里引用的令牌,读取头部和时间声明,把负载复制进报告,而不把凭据发送到任何地方。
排查时钟偏差投诉
把 iat 和 exp 与当前时间比较;剩余秒数能说明故障是过期还是时钟偏差。
隐私
解码完全在浏览器中运行;令牌、头部和负载从不上传、存储或记录。
参考资料
- IETF,RFC 7519: JSON Web Token (JWT),rfc-editor.org (访问日期:2026-10-07)——注册声明和示例令牌。
- IETF,RFC 7515: JSON Web Signature (JWS),rfc-editor.org (访问日期:2026-10-07)——紧凑序列化和
alg 头部。
- IETF,RFC 7518: JSON Web Algorithms (JWA),rfc-editor.org (访问日期:2026-10-07)——
none 与签名算法。
本页计算器
精选工具,点开即用;小工具可直接试算,数值会带入完整计算器。