在线检测
JSON工具
编码/加密
图片处理
文字处理
格式化
网络
前端
后端
搜索工具、优惠码…⌘K
指南 发布 By 出海导航编辑部

JWT 从原理到调试:结构 / 签名算法 / 常见坑 2026

出海对接海外 SaaS / 支付 / SSO 常遇到 JWT — 三段结构怎么读、HS 与 RS 签名算法差别、exp/iat 怎么看、payload 为什么不能放密码,以及怎么在线解析与验签

JWTJWT 解析JWT 签名HS256RS256API 鉴权出海开发

JWT 是海外 API / SSO / OAuth 里最常见的令牌格式,但它「不是加密」这点常被误解。本文讲清 JWT 的三段结构、HS256 与 RS256 签名算法差别、exp/iat 时间字段、以及「payload 只是编码不是加密」等关键认知,附 chdh.me 纯本地 JWT 解析与验签工具。

这是什么

对接海外 SaaS、支付、SSO 单点登录、OAuth 授权时,到处都是 JWT(JSON Web Token)——登录返回它、接口带着它、回调里塞着它。但很多人对 JWT 有个致命误解:以为它是加密的

这篇讲清 JWT 到底是什么、三段结构怎么读、签名算法怎么选、有哪些坑。文中用的 JWT 解析 / 校验 工具全程浏览器本地运行、不上传——调试含敏感信息的令牌也安全。

TL;DR:JWT = 三段用点隔开的 Base64(header.payload.signature)。前两段任何人都能解码看到(不是加密!),签名只保证「没被篡改」。别在 payload 里放明文密码。

一、三段结构:header.payload.signature

一个 JWT 长这样(用 `.` 分三段):

``` eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjMiLCJuYW1lIjoiY2hkaCJ9.SflKx... ```

内容编码方式
header算法与类型,如 `{"alg":"HS256","typ":"JWT"}`Base64URL
payload载荷(claims),如用户 ID、过期时间Base64URL
signature对前两段的签名算法相关

把 JWT 粘进 JWT 解析工具 点「解析」,就能看到解码后的 header 和 payload。关键点:前两段只是 Base64URL 编码,不是加密——工具(和任何人)不需要密钥就能解出内容。

二、payload 里的标准字段(claims)

payload 里有一批约定俗成的字段:

  • `sub`——主题(通常是用户 ID)
  • `iss`——签发者
  • `aud`——受众(这个令牌给谁用)
  • `exp`——过期时间(Unix 时间戳)
  • `iat`——签发时间
  • `nbf`——生效时间(在此之前无效)

`exp` / `iat` 是 Unix 秒级时间戳,人不好读。本站的解析工具会把它们换算成可读的 ISO 时间,方便判断令牌是否过期。

三、签名算法:HS 与 RS 的关键差别

signature 段用 header 里的 `alg` 指定的算法生成,主流两类:

算法族全称密钥模型谁能验签
HS256/384/512HMAC + SHA对称:一把共享密钥持有密钥的一方
RS256/384/512RSA + SHA非对称:私钥签、公钥验任何拿到公钥的人
  • HS256——服务端用一把密钥签名和验签。简单,适合单体应用。风险:密钥泄露则任何人能伪造令牌。
  • RS256——授权服务器用私钥签名,各个资源服务用公钥验签。适合多服务 / 第三方(OAuth、OIDC、大多数海外 SSO 用它),因为不用把签名密钥分发出去。

本站 JWT 工具 支持校验 HS256 / HS384 / HS512:在「HMAC 密钥」填服务端密钥点「校验签名」,验证令牌是否被篡改、密钥是否匹配。RS/ES 等非对称签名的验签需要公钥,暂不覆盖。

四、三个必须知道的坑

1. payload 不是加密,是编码——任何人都能解码看到里面的内容。绝对不要在 payload 里放明文密码、完整银行卡号等敏感信息。签名只防篡改、不防偷看。 2. 别信 `alg: none`——历史上有攻击把 header 的 `alg` 改成 `none` 绕过验签。服务端必须固定期望的算法,不能盲信令牌里写的 alg。 3. 过期时间要真的校验——很多人只解析不校验 `exp`,导致过期令牌还能用。验签之外一定要检查 `exp` / `nbf`。

五、什么时候用 JWT、什么时候别用

  • ✅ 适合:无状态 API 鉴权、SSO / OAuth、微服务间传递身份。
  • ⚠️ 谨慎:需要「立即注销」的场景——JWT 无状态、签发后到期前一直有效,强制失效要额外做黑名单,反而失去无状态优势。这种场景传统 session 可能更简单。

关于 chdh.me

出海导航 chdh.me 是面向中国跨境电商 / 独立站 / 海外 SaaS 创业者的独立工具评测与发现平台,并陆续自建一批纯本地、不上传的在线小工具。独立运营 · 纯公益JWT 解析 / 校验工具 见顶栏「编码/加密」下拉。相关阅读:对接海外 API 的编码与加密速查在线 JSON 工具怎么用

其他评测报告