• 用******户 使用了工具 Base64编解码
  • 开******发 使用了工具 MD5加密
  • 工******程 使用了工具 时间戳转换
  • 程******序 使用了工具 JSON格式化
  • 设******计 使用了工具 图片压缩
  • 产******品 使用了工具 URL编解码
  • 测******试 使用了工具 正则表达式
  • 运******维 使用了工具 密码生成器

JWT在线解码工具

编码加密
JWT在线解码工具,一键解析JWT Token,查看Header、Payload和Signature,支持时间戳格式化,输出标准格式化JSON,适用于接口调试、令牌校验、信息查看等场景
JWT解码JWT解析JSON Web TokenToken解码接口调试令牌校验Base64Url
JWT在线解码
输入JWT Token
使用说明

工具介绍

JWT(JSON Web Token)是一种开放标准(RFC 7519),用于在各方之间安全地传输信息。JWT由Header、Payload、Signature三部分组成,用点(.)分隔。Header和Payload使用Base64Url编码,不是加密,任何人都可以解码查看。本工具支持在线解码JWT Token,解析Header和Payload内容,自动识别标准声明字段并格式化时间戳。所有操作均在浏览器本地完成,Token不会上传任何服务器,安全可靠。

JWT结构说明

Header(头部) 通常包含两部分:令牌类型(typ)和所使用的签名算法(alg),如HS256、RS256等。使用Base64Url编码。
Payload(载荷) 包含声明(Claims),即关于实体(通常是用户)和其他数据的陈述。分为注册声明、公共声明和私有声明。使用Base64Url编码。
Signature(签名) 用于验证消息在传递过程中有没有被更改。对于使用私钥签名的Token,还可以验证发送方的身份。

标准注册声明

声明名称说明
iss签发者Issuer,签发该Token的主体
sub主题Subject,该Token面向的用户/主体
aud受众Audience,接收该Token的一方
exp过期时间Expiration Time,Token过期时间(Unix时间戳)
nbf生效时间Not Before,在此时间之前Token无效
iat签发时间Issued At,Token签发时间(Unix时间戳)
jti令牌IDJWT ID,Token的唯一标识符

常用签名算法

算法名称类型说明
HS256HMAC-SHA256对称加密使用SHA-256的HMAC签名
HS384HMAC-SHA384对称加密使用SHA-384的HMAC签名
HS512HMAC-SHA512对称加密使用SHA-512的HMAC签名
RS256RSASSA-PKCS1-SHA256非对称加密使用SHA-256的RSA签名
RS384RSASSA-PKCS1-SHA384非对称加密使用SHA-384的RSA签名
RS512RSASSA-PKCS1-SHA512非对称加密使用SHA-512的RSA签名
ES256ECDSA-SHA256非对称加密使用SHA-256的ECDSA签名(P-256曲线)
ES384ECDSA-SHA384非对称加密使用SHA-384的ECDSA签名(P-384曲线)
ES512ECDSA-SHA512非对称加密使用SHA-512的ECDSA签名(P-521曲线)
PS256RSASSA-PSS-SHA256非对称加密使用SHA-256的RSA-PSS签名
none无签名不安全未使用签名,请勿在生产环境使用

使用步骤

输入Token
在输入框中粘贴JWT Token字符串
点击解码
点击「解码JWT」按钮进行解析
3
查看结果
查看Header信息、Payload信息和完整JSON

使用技巧

常见问题

Q1: JWT解码和JWT验证有什么区别?

JWT解码只是将Base64Url编码的Header和Payload还原为可读的JSON格式,任何人都可以进行,不需要密钥。JWT验证则是使用密钥验证Signature的有效性,确认Token没有被篡改且确实由可信方签发。本工具仅提供解码功能,不验证签名。重要提示:JWT的Payload不是加密的,只是编码的,绝不能在JWT中存放敏感信息(如密码、银行卡号等)。

Q2: 为什么解码后中文显示乱码?

JWT标准使用UTF-8编码,如果解码后中文显示乱码,可能有以下原因:1) Token不是标准UTF-8编码的;2) Payload中的中文被额外加密或编码了;3) Token在传输过程中被损坏。请检查Token的来源和生成方式。本工具使用标准UTF-8解码,如果是非标准编码可能无法正确显示。

Q3: HS256和RS256有什么区别?哪个更安全?

HS256(HMAC-SHA256)是对称加密算法,使用同一个密钥进行签名和验证,计算速度快,适合单体应用。RS256(RSA-SHA256)是非对称加密算法,使用私钥签名、公钥验证,公钥可以公开分发,安全性更高,适合微服务、分布式系统等多方验证场景。一般来说,RS256比HS256更安全,因为不需要在验证方共享密钥。但HS256速度更快,实现更简单。选择哪种取决于使用场景和安全需求。

Q4: JWT存在安全风险吗?使用时要注意什么?

JWT本身是安全的,但使用不当会带来风险:1) 不要在Payload中存放敏感信息,因为Base64Url不是加密;2) 使用HTTPS传输,防止Token被窃取;3) 设置合理的过期时间(exp),减少被盗用的风险;4) 存储在HttpOnly Cookie中比localStorage更安全,可防止XSS窃取;5) 验证签名,确保Token未被篡改;6) 考虑使用刷新令牌(Refresh Token)机制,缩短访问令牌有效期。

Q5: 我的Token会被上传吗?隐私安全吗?

绝对安全。本JWT解码工具所有计算全程在浏览器本地独立完成,使用纯JavaScript实现,无需联网操作,全程不产生网络传输。您输入的JWT Token、解码结果等所有数据都不会发送、记录或缓存到任何服务器。关闭页面后所有数据即刻清空。您的Token和隐私完全由您掌控。

应用场景

应用场景说明
接口调试开发调试时查看JWT Token的内容和有效期
令牌校验验证JWT Token的结构是否正确
问题排查排查认证失败、Token过期等问题
学习理解学习JWT结构和原理
Payload查看快速查看Token中的用户信息和权限
时间计算查看Token的签发时间和过期时间