JWT 过期检查器

检查 JWT 令牌过期时间并解码 JWT 负载

所有 JWT 解码和检查都在您的浏览器本地完成。您的令牌永远不会离开您的设备。

关于 JWT 过期检查器

这个免费的在线 JWT(JSON Web Token)过期检查器帮助您快速验证 JWT 令牌是否过期、解码其内容并验证其结构。非常适合从事身份验证系统、API 和基于安全令牌的应用程序的开发人员。

所有 JWT 处理都在您的浏览器本地完成 - 您的令牌永远不会离开您的设备,确保敏感身份验证数据的完全安全。

该工具解码 JWT 头部和负载,显示过期信息,并显示距离过期还有多长时间或令牌过期多久了。

如何使用

  1. 粘贴您的 JWT 令牌到输入区域(令牌通常以"eyJ..."开头)
  2. 点击"检查过期时间"以验证令牌是否过期并查看过期详情
  3. 点击"解码 JWT"以查看解码后的头部和负载
  4. 查看结果:
    • 令牌状态:显示令牌是有效、已过期还是尚未生效
    • 过期时间:令牌何时过期(如果存在"exp"声明)
    • 剩余时间:距离过期还有多久或已过期多久
    • 解码数据:查看头部(算法、类型)和负载(声明)
  5. 复制解码数据使用头部或负载的复制按钮

关键术语与概念

JWT(JSON Web Token)

一种紧凑、URL 安全的令牌格式,用于在各方之间安全地传输信息。JWT 通常用于现代 Web 应用程序中的身份验证和授权。

JWT 结构

JWT 由点(.)分隔的三个部分组成:头部.负载.签名。每个部分都经过 Base64URL 编码。

头部(Header)

包含有关令牌的元数据,通常是签名算法(alg)和令牌类型(typ)。

负载(Payload)

包含声明 - 关于用户和附加数据的陈述。常见声明包括 exp(过期)、iat(签发时间)、sub(主题)和自定义声明。

签名(Signature)

通过编码头部和负载,然后使用密钥签名来创建。此工具仅解码但不验证签名。

exp 声明

过期时间声明(exp)是一个 Unix 时间戳,指示令牌何时过期。过了这个时间,令牌不应被接受。

iat 声明

签发时间声明(iat)是一个 Unix 时间戳,指示令牌何时创建。

nbf 声明

生效时间声明(nbf)是一个 Unix 时间戳,指示令牌何时生效。在此时间之前不应接受令牌。

常见用例

  • API 开发:在开发和测试身份验证系统期间验证 JWT 令牌
  • 调试身份验证:检查令牌可能被拒绝的原因(过期、尚未生效、格式错误)
  • 令牌检查:无需编写代码即可快速查看声明和过期时间
  • 安全测试:在安全审计或渗透测试期间分析 JWT 令牌
  • 开发测试:验证应用程序中的令牌过期逻辑
  • 令牌生命周期管理:监控令牌何时过期以进行刷新逻辑
  • 学习与教育:了解 JWT 结构和令牌的工作原理

示例

示例 1:有效令牌

具有未来过期时间的 JWT 令牌:

  • 状态:有效令牌 ✓
  • 剩余时间:2 小时 45 分钟
  • 头部:{"alg":"HS256","typ":"JWT"}
  • 负载:{"sub":"1234567890","name":"John Doe","exp":1735891200}

示例 2:已过期令牌

已经过期的 JWT 令牌:

  • 状态:令牌已过期 ✗
  • 已过期:3 天 5 小时前
  • 过期时间:2024-12-25 10:30:00 UTC

示例 3:无过期时间的令牌

没有 exp 声明的 JWT 令牌:

  • 状态:未设置过期时间
  • 说明:令牌不会自动过期
  • 警告:考虑为安全添加过期时间

重要注意事项

⚠️ 签名验证:此工具仅解码 JWT 令牌。它不验证签名。在信任令牌内容之前,请始终在服务器上验证 JWT 签名。

🔒 安全性:所有解码都在您的浏览器中进行。您的 JWT 令牌永远不会离开您的设备。但是,在共享解码的令牌内容时要小心,因为它们可能包含敏感信息。

📅 过期检查:过期检查基于令牌中的"exp"声明。如果您的令牌没有"exp"声明,则无法确定过期时间。

🕐 时间同步:过期时间根据您设备的时钟进行检查。确保系统时间准确以获得正确的结果。

🔐 令牌处理:切勿公开共享您的 JWT 令牌或将其粘贴到不受信任的工具中。此工具是安全的(仅在客户端),但对生产令牌要谨慎。

✅ 最佳实践:为了安全起见,始终在 JWT 上设置过期时间。短期令牌(几分钟到几小时)比长期令牌更安全。

常见问题

什么是 JWT 令牌?

JWT(JSON Web Token)是一种紧凑、URL 安全的令牌格式,用于在各方之间安全地传输信息。JWT 通常用于现代 Web 应用程序中的身份验证和授权。JWT 由三部分组成:头部、负载和签名,由点分隔。

我的 JWT 令牌会发送到服务器吗?

不会,所有 JWT 解码和过期检查完全在您的浏览器中进行。您的令牌永远不会离开您的设备,使此工具对生产和敏感身份验证令牌完全安全。

此工具验证 JWT 签名吗?

不,此工具仅解码 JWT 令牌以读取其内容并检查过期时间。它不验证加密签名。在生产应用程序中信任令牌内容之前,请始终在服务器上验证 JWT 签名。

"令牌已过期"是什么意思?

令牌已过期意味着 JWT 中的"exp"(过期)声明已超过当前时间。服务器不应接受过期的令牌,通常需要用户重新进行身份验证或刷新令牌。

如果我的 JWT 没有过期时间怎么办?

如果 JWT 不包含"exp"声明,从技术上讲它不会自动过期。但是,出于安全原因,通常不建议这样做。大多数身份验证系统应该在 JWT 上设置过期时间。

如何读取解码的 JWT 数据?

解码后,该工具会显示头部(包含算法和令牌类型)和负载(包含用户 ID、过期时间、签发时间和自定义数据等声明)。所有数据都以 JSON 格式显示,便于阅读。

为什么我的有效令牌显示为已过期?

检查您设备的系统时间。过期检查基于您的本地时钟。如果您的系统时间不正确,它可能会将有效令牌显示为已过期,反之亦然。还要验证令牌是否使用正确的过期时间签发。

我可以解码来自任何应用程序的令牌吗?

是的,此工具可以解码任何标准 JWT 令牌,无论是哪个应用程序或框架创建的。JWT 遵循标准化格式(RFC 7519),可跨所有平台和编程语言工作。

JWT 的三个部分是什么?

JWT 有三个由点分隔的 Base64URL 编码部分:头部(算法和类型)、负载(声明和数据)和签名(用于验证的加密签名)。格式为:xxxxx.yyyyy.zzzzz

使用此工具处理生产令牌安全吗?

是的,因为所有处理都在您的浏览器本地进行,令牌永远不会离开您的设备。但是,在粘贴敏感令牌时要小心。避免共享可能包含机密信息的解码令牌内容。

exp、iat 和 nbf 声明有什么区别?

exp(过期时间)是令牌过期的时间。iat(签发时间)是令牌创建的时间。nbf(生效时间)是令牌生效的时间。这三个都使用 Unix 时间戳(自 1970 年 1 月 1 日以来的秒数)。

JWT 令牌应该多久过期一次?

为了安全起见,访问令牌通常应在 15 分钟到 1 小时内过期。刷新令牌可以持续更长时间(几天到几周)。理想的过期时间取决于您的安全要求和用户体验需求。

Advertisement