JWT 生成与签名工具

🔒 完全在您的浏览器中运行——不上传任何数据。
快速添加:
 

关于此工具

jwtviewer.com 解码令牌;jwtparser 生成它们。设置 claims、选择 HMAC 算法、输入密钥,工具便用 Web Crypto API 实时签名令牌。适合测试需要 bearer token 的 API、在测试中初始化认证,或用特定的 exprole 复现 bug。

仅支持 HMAC(共享密钥)算法——切勿在此签署真实的生产令牌,生成的令牌仅供测试。一切都在本地进行;密钥和 payload 不会离开浏览器。要解码或验证令牌,请使用 jwtviewer.com

签名遵循 RFC 7519:工具构建 header {"alg":…,"typ":"JWT"},对 header 和 payload 做 Base64url 编码,再用你的密钥通过 Web Crypto API 对 header.payload 计算 HMAC-SHA 签名。HS384 和 HS512 只是比 HS256 使用更长的哈希——选择后端期望的那种即可。expiatnbf 等时间 claim 是 Unix 秒,因此快速添加按钮会替你计算。输出的三个部分用不同颜色标注,让你清楚看到 header、payload 和签名各自从哪里开始。

常见问题

这个工具能生成 RS256 令牌吗?

不能——仅支持 HMAC 系列(HS256、HS384、HS512),使用共享密钥签名。RS256 需要 RSA 私钥。测试场景下 HMAC 通常足够;要解码或验证任何令牌,请用 jwtviewer.com。

在这里输入密钥安全吗?

签名完全在你的浏览器中通过 Web Crypto API 进行——密钥和 payload 绝不会上传。即便如此,最佳实践是在这里只用一次性测试密钥,绝不用真实的生产签名密钥。

如何设置令牌过期时间?

exp claim 是以秒计的 Unix 时间戳。点击快速添加按钮——exp = +1h、+1d 或 +7d——或自己输入数值;每次修改后令牌都会立即重新签名。

为什么我的 API 拒绝生成的令牌?

常见原因:密钥与服务器不一致、算法与后端期望不同、exp 已过期,或服务器要求 RS256 等非对称算法。可在 jwtviewer.com 解码令牌对比各 claim。