JWT 解码器
本地处理 · 数据不上传解码 JSON Web Token,查看它的头部、载荷和签名——全程在浏览器本地完成。
JWT 解码器是什么?
JWT 解码器是一个快速、免费的在线工具,可以解码 JSON Web Token(JWT),让你即时查看它的内容。一个 JWT 由三段以英文句点连接的 Base64URL 编码组成,形如 header.payload.signature(头部.载荷.签名)。本工具会把令牌按句点拆分,将头部和载荷解码还原成可读的 JSON,并展示原始的签名段——全部在你的浏览器里完成。
第一段是头部(header),它描述令牌的签名方式——通常包含算法(alg,例如 HS256 或 RS256)和令牌类型(typ,一般为 JWT)。第二段是载荷(payload),承载着声明(claims),也就是令牌断言的实际数据。你常会看到注册声明,如 iss(签发者)、sub(主题)、aud(受众)、exp(过期时间)、iat(签发时间)和 nbf(生效时间)。时间类声明是以秒为单位的 Unix 时间戳,因此本解码器会把 exp、iat 和 nbf 转换成你本地的日期与时间以便阅读,并提示令牌当前是否已过期。
需要特别理解的是:解码 JWT 并不等于验证 JWT。头部和载荷只是经过 Base64URL 编码,并未加密,因此任何持有令牌的人都能读取它们——切勿把机密信息放进载荷。第三段签名(signature)才是用来证明令牌由可信方签发、且未被篡改的部分。验证签名需要密钥或公钥,是一个独立的密码学步骤。本工具仅做解码:它有意不验证签名。在真实系统中,绝不要因为未验证令牌的内容就做出任何安全决策——务必在服务端用正确的密钥进行验证。
所有处理都在你的浏览器本地完成。你粘贴的令牌不会被发送到服务器、不会被记录、也不会被存储,因此在调试 API、OAuth 或 OpenID Connect 流程、或排查登录问题时,查看访问令牌、ID 令牌等敏感 JWT 都很安全。你可以配合 Base64 工具查看单个分段,或用 JSON 格式化工具美化解码后的声明。
常见问题
这个工具会验证签名吗?
不会。本工具仅做解码——它读取头部和载荷,但不验证签名。验证 JWT 需要密钥或公钥,且必须在服务端完成。绝不要因为未验证的令牌就做出安全决策。
JWT 的三段分别是什么?
JWT 的结构是 header.payload.signature(头部.载荷.签名)。头部和载荷是 Base64URL 编码的 JSON,签名是一个用于证明令牌真实性的密码学值。两个句点把三段隔开。
为什么不用密钥就能读取载荷?
因为标准 JWT 的载荷只是编码,并未加密。Base64URL 完全可逆,任何持有令牌的人都能读取其中的声明。正因如此,你绝不应把机密信息存进 JWT 载荷。
exp、iat 和 nbf 是什么意思?
它们都是以秒为单位的 Unix 时间戳时间声明:exp 是令牌过期的时间,iat 是签发时间,nbf 是令牌最早生效的时间。本解码器会把它们分别显示为你本地的日期和时间。
我的令牌会被发送到服务器吗?
不会。解码全部在你的浏览器里完成。你粘贴的令牌不会被上传、记录或存储,因此在这里查看敏感的访问令牌或 ID 令牌都很安全。