在线 JWT Signer

JWT signer 可从 JSON 载荷和密钥创建并签名 HS256/384/512 令牌。

您的载荷和密钥使用 Web Crypto API 在您的浏览器本地签名,不上传任何内容,但请将其视为测试工具,避免粘贴真实的生产密钥或令牌。

由 Udit Agarwal 开发和维护

需要检查令牌?试试 JWT 解码器。

关于 JWT 签名工具

此 jwt signer 使用 HMAC 算法 HS256、HS384 和 HS512,从 JSON 载荷和共享密钥创建并签名 JSON Web Token。粘贴您的声明,选择算法,工具便会构建头部、对所有内容进行 base64url 编码,并用 Web Crypto API 签名,生成完整的令牌。当您需要在线签名 jwt 以进行本地测试、模拟鉴权流程或生成 jwt 以验证后端如何校验 HMAC 签名时,它非常方便。开发者、QA 工程师和 API 测试人员可以快速创建 jwt 令牌,而无需搭建签名库。一切都在您的浏览器本地运行,因此载荷和密钥都在您的设备上处理,不会上传到任何服务器。

功能特性

  • 使用 HS256、HS384 或 HS512 HMAC 算法签名令牌
  • 自动构建 JWT 头部并进行 base64url 编码
  • 使用浏览器原生的 Web Crypto API 计算签名
  • 在签名前验证您的载荷是格式良好的 JSON
  • 可为 HMAC 签名设置任意共享密钥
  • 在您编辑载荷或密钥时实时更新签名后的令牌
  • 输出完整、可直接使用的 header.payload.signature 令牌
  • 可将签名后的令牌下载为 token.jwt 文件

如何使用 JWT 签名工具

  1. 将您的声明以 JSON 形式粘贴到载荷(JSON)输入框中。
  2. 用 HS256 / HS384 / HS512 切换选择签名算法。
  3. 在密钥字段中输入您的共享密钥。
  4. 从已签名 JWT(HMAC)输出中复制令牌,或将其下载为 token.jwt。

示例

输入

{
  "sub": "1234567890",
  "name": "Ada",
  "iat": 1516239022
}

输出

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFkYSIsImlhdCI6MTUxNjIzOTAyMn0.0J9-Vq0Qb8m8Pq3qkFf3kYwQ5kqS1q3y6n8m9Y4hXyU

使用 HS256 和密钥「your-256-bit-secret」签名的载荷(所示签名仅为示例)。

常见错误与故障排除

  • 签名器显示 JSON 错误且不生成令牌。 — 请确保载荷是有效的 JSON,例如将字符串值用双引号括起来并移除尾随逗号。
  • 因未设置密钥而签名失败。 — 请在密钥字段中输入一个值;没有共享密钥就无法签名 HMAC 令牌。
  • 您的后端以签名无效为由拒绝令牌。 — 请确认验证方使用的密钥和算法(HS256/384/512)与您签名时所选的完全一致。
  • 您期望得到 RS256 或 ES256 令牌。 — 本工具仅签名 HMAC 算法;请使用 HS256、HS384 或 HS512,它们共享一个密钥,而非公钥/私钥对。

常见问题

什么是 JWT Signer,它有什么作用?
JWT Signer 使用 HMAC 算法 HS256、HS384 或 HS512,将 JSON 载荷和共享密钥转换为完整的、已签名的 JSON Web Token。
如何从载荷创建 JWT?
将您的声明以 JSON 粘贴,选择算法并输入密钥;工具会编码头部和载荷,并附加 HMAC 签名,生成完整的令牌。
JWT Signer 支持哪些算法?
它使用 HMAC 算法 HS256、HS384 和 HS512 签名令牌,这些算法都使用单一共享密钥,而非公钥/私钥对。
我能验证或解码 JWT Signer 生成的令牌吗?
本工具仅签名令牌,但您可以将结果粘贴到 JWT 解码器中以检查头部和载荷。
JWT Signer 会把我的密钥或载荷发送到任何地方吗?
不会。JWT Signer 完全在您的浏览器中使用 Web Crypto API 运行,因此您的密钥和载荷都在本地处理,绝不离开您的设备。
为什么我签名的令牌与另一个工具的输出不同?
签名随密钥和算法而变化;只有使用相同的密钥和 HMAC 算法时,相同的载荷才会产生相同的令牌。

相关工具

  • JWT 解码器 — 解码 JWT 的头部和载荷,并查看 exp/iat(不做验证)。
  • TOTP / 2FA 生成器 — 从 base32 密钥生成基于时间的一次性密码(2FA 验证码)。
  • 哈希生成器 — 通过 Web Crypto API 生成 SHA-256 / SHA-1 / SHA-384 / SHA-512。
  • 密码生成器 — 生成强随机密码并附带强度指示器(加密安全)。
  • Base64 编码 / 解码 — 安全的 UTF-8 Base64 编码与解码。
  • URL 解析器 — 将 URL 拆解为各个部分并列出查询参数。
  • Unix 时间戳转换工具 — 在 Unix 时间戳与可读日期(本地和 UTC)之间转换。
  • UUID 生成器 — 一次最多生成 1000 个 UUID:随机 v4、按时间排序的 v7 或 NIL UUID。

更多安全工具

查看全部安全工具 (27) · 全部工具