JWT解码器

粘贴您的JSON Web Token (JWT) 以即时解码和查看其标头和负载。支持HS256、RS256和其他常见的算法。

标头

// 解码后的标头将显示在这里

负载

// 解码后的负载将显示在这里

我们的JSON Web Token (JWT) 解码器完整指南

欢迎使用我们安全的客户端JWT解码器。这款免费的在线工具对于任何开发人员、安全专业人员或处理现代身份验证系统的个人来说都是必不可少的实用工具。它允许您即时解码JWT(JSON Web Token),并以整洁、易于理解的格式检查其内容。只需将您的令牌粘贴到文本区域,我们的工具就会解析标头和负载,并以格式化的JSON形式显示它们。

这款在线JWT解码器最重要的特性是其安全性。所有的解码和处理都100%在您的浏览器中完成。您的令牌永远不会发送到我们的服务器。这种客户端处理方式确保了您的敏感信息(如身份验证令牌、API密钥或私人用户数据)完全保密。您可以满怀信心地调试任何JWT令牌。

什么是 JSON Web Token (JWT)?

JSON Web Token (JWT) 是一种紧凑的、URL安全的开放标准(由RFC 7519定义),用于在各方之间作为JSON对象安全地传输信息。由于此信息经过数字签名,因此可以进行验证和信任。JWT是无状态且自包含的,这意味着验证用户所需的所有信息都包含在令牌本身中。这使得它们成为现代Web和移动应用中处理身份验证和信息交换的极受欢迎的选择。

您可以通过由点(.)分隔的三部分结构轻松识别JWT:header.payload.signature。

JWT 的三部分详述

当您使用我们的JWT解码器时,您正在查看令牌前两部分的解码版本。

1. 标头 (元数据)

令牌的第一部分是JWT标头。它是一个Base64Url编码的JSON对象。它通常由两个键值对组成:

2. 负载 (声明)

令牌的第二部分是JWT负载。这部分也是一个Base64Url编码的JSON对象,包含“声明”(claims)。声明是关于实体(通常是用户)的陈述和追加数据。声明有三种类型:

我们的JWT声明查看器使您可以轻松地一目了然地检查所有这些声明。

3. 签名

令牌的第三部分是JWT签名。它是通过获取编码的标头、编码的负载、密钥(或非对称算法的私钥),并使用指定的算法(alg)运行它们来创建的。

签名的目的是验证令牌的真实性。它确保令牌在传输过程中没有被更改。如果攻击者甚至更改负载中的一个字符,签名将不再有效。这就是为什么此工具不执行且无法执行签名验证的原因——这样做需要密钥,而密钥永远不应共享或粘贴到在线工具中。

如何使用此 JWT 解码工具

  1. 复制您的令牌:从您的应用、浏览器本地存储或API响应中复制完整的JWT字符串(全部三部分)。
  2. 粘贴令牌:将令牌粘贴到页面顶部的文本区域。您还可以使用“加载示例”按钮查看有效令牌。
  3. 点击“解码令牌”:工具将即时解析令牌。
  4. 检查结果:标头和负载将显示在下方两个独立的、清晰格式化的JSON框中,让您轻松阅读所有声明和元数据。
  5. 清除:点击“清除”按钮重新开始。

常见调试场景

JWT解码器主要是一个调试工具。以下是您可以使用它解决的常见问题:

相关开发人员工具

由于JWT建立在其他Web标准之上,您可能会发现这些工具与我们的解码器配合使用非常有用:

常见问题解答

什么是JWT解码器?

JWT解码器是一种将JSON Web Token拆分为其三个组件(标头、负载和签名),并以人类可读、格式化的JSON结构显示标头和负载的工具。它允许您快速检查令牌中存储的数据(声明)和元数据。

此JWT解码器用于敏感令牌安全吗?

是的,它100%安全。此工具完全在客户端(您的浏览器中)运行。您的令牌、标头和负载绝不会通过网络发送,也不会在我们的服务器上记录或存储。您可以安全地解码敏感的身份验证令牌,而无需担心隐私问题。

此工具是否验证JWT的签名?

不。此工具仅解码令牌;它不验证签名。验证签名需要用于创建令牌的“密钥”(对于HS256等对称算法)或“公钥”(对于RS256等非对称算法)。您永远不应将密钥粘贴到在线工具中。此解码器用于检查令牌内部的数据(声明),而不是用于验证其真实性。

标头和负载之间有什么区别?

标头通常包含关于令牌的元数据,例如令牌类型(typ,通常为 'JWT')和所使用的签名算法(alg,例如 'HS256')。负载包含正在发送的实际数据或“声明”,例如用户的ID(sub)、令牌发行人(iss)、过期时间(exp)以及任何其他自定义数据。

JWT是编码的还是加密的?

这是一个常见的误区。标准的JWT(JWS)是经过编码(使用Base64Url)和签名的,但它是没有加密的。这意味着任何拥有令牌的人都可以解码并阅读其内容(正如该工具所示)。如果您需要隐藏数据以防被读取,则必须使用JSON Web加密 (JWE) 令牌。

JWT中的 'exp' 声明是什么意思?

exp(过期时间)声明是一个注册声明,定义了JWT在过期后不得再被接受处理的时间。它是一个Unix时间戳(表示自1970-01-01T00:00:00Z以来的秒数)。接收令牌的服务器应始终检查此声明,以确保令牌尚未过期。

JWT解码器:免费、安全的在线JWT解码工具 | CoderTab