解码 JWT Token,查看 Header、Payload 及过期状态
JSON Web Token(JWT)是一个紧凑、URL 安全的字符串,用于在两方之间传递声明(claims)——最常见是表示已登录用户的会话。它由 base64url 编码的三段组成,用点连接:header.payload.signature。
本工具会拆开 JWT,对 header 和 payload 做 base64url 解码,并展示美化后的 JSON 以及关键声明的元信息(签发时间、过期时间、剩余时长)。注意:本工具不验证签名——任何人都能解码 JWT,但只有持有签名密钥的人才能证明其真实性。
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFsaWNlIiwiaWF0IjoxNzAwMDAwMDAwLCJleHAiOjE3MDAwMDM2MDB9.signatureHeader:
{
"alg": "HS256",
"typ": "JWT"
}
Payload:
{
"sub": "1234567890",
"name": "Alice",
"iat": 1700000000,
"exp": 1700003600
}
状态: 已过期 (exp 2023-11-14 22:13:20 UTC)不会。验证需要签名密钥(HS256/HS512)或公钥(RS256/ES256),本工具没有。只解码 header 和 payload 让你查看声明。在自己验证签名之前,要把解码内容当成不可信。
解码完全在浏览器内完成,不会上传。但要注意 JWT 本身就是凭证:粘贴有效 token 时,能看到你屏幕的人就能用它。条件允许时尽量用测试或已过期的 token。
表示 token 声称未签名。历史上多个库曾有漏洞——直接接受 alg=none 并信任 payload。生产环境的验证器应明确拒绝 alg=none,几乎没有合法用途。
RFC 7519 注册声明:iat = 签发时间(Unix 秒);exp = 过期时间;nbf = 生效起始时间;iss = 签发方;sub = 主体(通常是用户 ID);aud = 受众。
JWT 用的是 base64url:把 + 换成 -,/ 换成 _,并去掉尾部 = 填充,这样不必转义就能放进 URL 和 HTTP header。解码器会自动处理。