什么是 JWT 生成器?
JWT生成器从头、索赔的有效负载和一个秘密构建JSON Web令牌,然后对其进行签名,以便服务器可以信任内容。JWT具有三个由点连接的base64url段:头命名签名算法,有效负载携带索赔,签名是前两个部分的HMAC。该工具根据您提供的值组装所有三个,并返回一个可以掉入授权头、测试夹具或卷曲命令的令牌。
手动生成令牌的原因是测试和调试。当您构建验证 JWT 的 API 时,您需要带有特定声明的示例令牌:用于确认您的 401 路径的过期令牌、特定用户 ID 的令牌、具有自定义角色或范围的令牌或带有已知秘密签名的令牌,以便您可以验证中间件是否接受。用手写这些意味着 base64url-编码两个 JSON 对象并计算一个 HMAC,这正是工具应该做的那种繁琐、容易出错的工作。在这里,您将声明粘贴为 JSON、选择 HS256、HS384 或 HS512,输入秘密,然后出现签名的令牌。
该工具还为您填写注册的时间声明。打开已发行时间,它会用当前的 Unix 时间标记 iat;设置以秒为单位的过期,它计算 exp;设置未先于偏移,它计算 nbf。这三个声明是大多数身份验证错误归结为的内容,因此正确生成它们,从纪元开始,以秒为单位,而不是以毫秒为单位,消除了常见的错误来源。
Everything 发生在你的浏览器中,有效负载、秘密和签名都通过内置的 Web Crypto API 在 JavaScript 本地运行,因此你的秘密永远不会被传输、记录或存储。这很重要,因为签名秘密是让任何人为你的系统铸造有效令牌的一个值。因为工作是本地工具,一旦页面加载,该工具也会保持离线运行。只有 HMAC 算法是故意提供的:RS256 和 ES256 用私钥签名,将私钥粘贴到网页中是值得避免的习惯。
JWT生成器的使用方法?
输入有效负载声明
JSON 对象键入或粘贴有效负载,例如{"子":"123","角色":"管理"}。按加载样本查看预期形状。您包含的任何声明均按原样保存。
添加时间声明
Leave isdued-at on 键以当前时间在 iat 上盖章。设置一个以秒为单位的过期来添加 exp,以及一个不以前的偏移来添加 nbf。该工具为您计算 Unix 时间戳。
选择算法和秘密
HS256,HS384或HS512,然后输入签名秘密,选择秘密是纯文本,base64url还是十六进制,这样它就会被解码到您的验证者使用的确切字节。
复制签名令牌
签名的 JWT 显示头和有效负载的解码预览。将其复制到剪贴板并在授权头、测试或请求中使用。
主要特点
HMAC 签署 (HS256/384/512)
令牌通过浏览器 Web Crypto API 与真实的 HMAC-SHA-256、384 或 512 签名,因此签名与 jsonwebtoken 或 jose 等服务器库将验证的内容相匹配。
自动时间声明
iat、exp 和 nbf 是从当前时间和您设置的偏移量(自历元以来的几秒钟内)计算出来的,这消除了验证错误的代币的最常见原因。
灵活的秘密编码
Secret可以是纯文本,base64url,或者是十六进制,它被解码为验证者期望的精确密钥字节,这在你的secret被存储时很重要base64-encoded。
解码预览
除了令牌之外,您还可以看到标头和有效负载以格式化 JSON 呈现,因此您可以在使用令牌之前确认算法和每个声明。
Frequently Asked Questions
Related Tools
Hash Generator
Generate MD5, SHA-1, SHA-256, SHA-384, and SHA-512 hashes from any text
JWT Decoder
Decode JWT headers and payloads, inspect claims, and check token expiry
CSS Grid Generator
Build CSS Grid layouts visually. Set columns, rows, track sizes, gaps and alignment with a live preview, then copy the generated grid CSS - all in your browser.
UUID Generator
Generate random UUIDs (Universally Unique Identifiers)
Comments
0 comments
No comments yet. Be the first to share your thoughts!