解码和生成 JWT 令牌
无数据
在下方输入用于签署JWT的密钥:
验证完全在浏览器中进行,令牌不会发送到外部服务器。
无数据
无数据
无数据
JWT(JSON Web Token)是一种用于在两方之间安全传输信息的开放标准(RFC 7519)。它经过数字签名,因此可以被验证和信任。JWT 可以使用 HMAC 算法或 RSA/ECDSA 公钥/私钥对进行签名。
xxxxx.yyyyy.zzzzz
iss签发者(Issuer)- 签发令牌的实体
sub主题(Subject)- 令牌的主题(通常是用户ID)
aud受众(Audience)- 令牌的预期接收者
exp过期时间(Expiration)- 令牌过期的 Unix 时间戳
nbf生效时间(Not Before)- 此时间之前令牌无效
iat签发时间(Issued At)- 令牌签发的 Unix 时间戳
jtiJWT ID - 令牌的唯一标识符
用户登录后颁发 JWT,在后续请求中验证身份
通过签名验证发送者身份并检测内容篡改
使用单个令牌在多个服务之间保持认证
微服务之间的安全 API 调用认证
HMAC + SHA-256。最常用的对称密钥算法
HMAC + SHA-384。比 HS256 更长的哈希,安全性更高
HMAC + SHA-512。使用最长哈希的对称密钥算法
此工具仅支持基于 HMAC 的对称算法(HS*)。RSA/ECDSA 非对称算法需要单独的公钥/私钥对。
JWT调试器是用于解码JSON Web Token、分析标题、有效载荷和签名,以及生成新JWT令牌的工具。可以直观地查看令牌的声明信息(发行者、过期时间、用户信息等),并支持使用HMAC算法(HS256/HS384/HS512)进行签名验证。所有处理都在浏览器中进行,令牌不会泄露到外部。
选择解码器/编码器
分析现有 JWT 时选择“解码器”标签页,创建新 JWT 时选择“编码器”标签页。
输入令牌(解码器)
粘贴 JWT 令牌字符串后,标头和负载会自动解码并显示。
验证签名
输入密钥并点击验证按钮,即可检查签名是否有效。
生成令牌(编码器)
设置算法和密钥,再输入标头与负载 JSON,即可生成 JWT 令牌。
不是。JWT 只是经过 Base64 编码,并未加密。任何人都能解码,因此请勿在负载中包含密码、信用卡号等敏感信息。
两者都是基于 HMAC 的对称密钥算法,但 HS256 使用 SHA-256,HS512 使用 SHA-512 哈希。HS512 生成更长的哈希,安全性更强,不过多数情况下 HS256 已经足够。
当 JWT 的 exp(过期时间)声明早于当前时间时,令牌即已过期。需要从服务器获取新令牌,或使用刷新令牌进行更新。
不会。所有解码和签名验证都使用浏览器的 Web Crypto API 在本地完成,令牌数据不会发送到服务器或外部。
目前仅支持基于 HMAC 的对称密钥算法(HS256、HS384、HS512)。RS256、ES256 等非对称密钥算法需要公钥/私钥对,因此需使用其他工具。