JWT 编解码器是一款用于 JSON Web Token 调试的开发工具,支持将 JWT 字符串解码为可读的 Header 和 Payload JSON、使用密钥或公钥验证签名有效性,以及自定义 Payload 并生成新的 JWT,全部在浏览器本地运行,不会向服务器发送令牌或密钥。
JWT 结构解析
一个典型 JWT 由三段 Base64url 编码字符串组成,以.分隔:
eyJhbGciOiJIUzI1NiJ9
.eyJ1c2VySWQiOiIxMjMiLCJleHAiOjE3MDAwMDAwMDB9
.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
**Header(头部)**解码后示例:
{
"alg": "HS256",
"typ": "JWT"
}
**Payload(载荷)**解码后示例:
{
"userId": "123",
"exp": 1700000000,
"iss": "example.com",
"iat": 1699993600
}
alg 字段决定签名算法,exp 为过期时间(Unix 时间戳),iss 为签发者,iat 为签发时间。
解码与签名验证
粘贴 JWT 后工具自动解码头部和载荷。工具根据 alg 字段自动判断算法类型并显示对应的验证输入框:
- 对称算法(HS256/HS384/HS512):输入共享密钥
- 非对称算法(RS256/RS384/RS512):输入 PEM 格式公钥或私钥
- 非对称算法(ES256/ES384/ES512):输入 PEM 格式 EC 公钥或私钥
验证结果实时显示为绿色(已验证)或红色(验证失败),无需点击额外按钮。
算法选择说明
HMAC 对称算法
- HS256 / HS384 / HS512
- 签名与验证使用同一密钥
- 适合单服务内部使用
- 密钥需严格保密,不可泄露给客户端
RSA/ECDSA 非对称算法
- RS256 / ES256 等系列
- 私钥签名,公钥验证
- 适合分布式系统,公钥可公开分发
- 生产环境推荐 RS256 或 ES256
编码生成 JWT
切换到编码模式,选择算法,编辑载荷 JSON,输入密钥或私钥,设置过期时间(如 2h 表示 2 小时,30m 表示 30 分钟,1d 表示 1 天,7d 表示 7 天),工具实时生成完整 JWT 字符串。过期时间输入后工具自动计算并写入 exp 字段。