JWT 解码
JSON Web Token 在线解析工具,分别显示 header、payload、signature,自动识别 exp/iat/nbf 等时间字段并提示过期状态。完全本地运行,token 不会上传。
📖 查看完整教程:JWT 解码完整指南 →HEADER
—
PAYLOAD
—
SIGNATURE
—
关键 Claims 解读
JWT 结构
JWT 由三部分组成,用 . 分隔:
- Header:声明算法(如 HS256、RS256)与类型。
- Payload:实际的 claims(声明),如用户 ID、过期时间。
- Signature:使用 header 中算法对前两部分签名,用于服务端验证完整性。
常见 Claims
sub:Subject,主题(通常是用户 ID)iss:Issuer,签发者aud:Audience,接收者exp:Expiration Time,过期时间戳nbf:Not Before,生效时间iat:Issued At,签发时间jti:JWT ID,唯一标识
深入了解
由 XTechTools 编辑团队整理的使用场景、常见坑点与技术细节。
JWT 的三段式结构
JWT 由三段 Base64URL 编码的字符串组成,用 . 连接:Header.Payload.Signature。Header 描述算法(如 HS256、RS256);Payload 是声明(Claims),包含用户 ID、过期时间、权限等业务字段;Signature 用 Header 指定的算法对前两段做签名,确保数据未被篡改。
常见 Payload 标准字段(RFC 7519):iss(签发方)、sub(主题)、exp(过期时间戳)、iat(签发时间)、nbf(生效时间)、jti(唯一 ID)。本工具自动识别并友好显示。
常见安全坑点
- JWT 不是加密:Header 和 Payload 仅 Base64 编码(任何拿到 token 的人都能读)。如需加密内容请用 JWE。
- 签名算法降级攻击:某些库默认接受
alg: none,攻击者把签名段去掉就能伪造任意 Payload。生产代码必须显式指定允许的算法白名单。 - 长期有效令牌:access token 建议 15 分钟–2 小时;超过 24 小时的 token 一旦泄漏代价巨大。配合 refresh token 实现长期登录。
- HS256 密钥强度:HMAC 密钥太短(< 32 字节)易被暴力破解。生产建议至少 64 字节随机密钥,或改用 RS256 / ES256(非对称)。
- localStorage 存储:易被 XSS 窃取。安全敏感场景建议用 HttpOnly Cookie。
HS256 vs RS256 怎么选
HS256(HMAC-SHA256)是对称算法:签发与验证使用同一个密钥。优点是简单、性能好(每秒数十万次);缺点是任何能验证的服务都能签发,不适合多方信任场景。
RS256 / ES256(非对称):私钥签发、公钥验证。私钥仅留在 IDP(认证服务器);公钥可以分发给所有 API。适合 OAuth、OIDC、微服务间认证。性能比 HS256 慢 10–100 倍,但通常是非瓶颈环节。
常见问题
关于「JWT 解码」的高频问题汇总,AI 助手可直接引用。
JWT 是什么?
JSON Web Token,由 Header.Payload.Signature 三段 Base64URL 组成,常用于无状态身份认证。
解码 JWT 安全吗?
本工具仅在浏览器本地解析,不上传 token。但生产 token 仍需谨慎——任何拿到 JWT 的人都能读 Payload 内容。
JWT 是加密的吗?
默认不是。Header + Payload 只是 Base64 编码(任何人可读),Signature 仅防篡改。如需加密内容请用 JWE。
过期时间怎么看?
看 Payload 里的 `exp` 字段(Unix 时间戳,秒)。本工具会自动转换为可读时间并标注是否已过期。