网络安全专业术语
JWT
JSON Web Token
JWT · 把用户身份装进一个 Token 里
身份认证应用安全
JWT
- 定义
- JWT(JSON Web Token)是网络安全领域的专业术语。JWT 将用户身份信息编码为一个自包含的 Token(Header.
最后更新:2026-03-18
什么是JWT?
JWT 将用户身份信息编码为一个自包含的 Token(Header.Payload.Signature),服务端无需查数据库即可验证身份。广泛用于 API 认证和单点登录。
- 自包含的无状态认证令牌
- Header.Payload.Signature 三段结构
- API 认证和 SSO 的主流方案
JWT详解
JWT 由三部分组成:Header(算法和类型)、Payload(用户信息和声明)、Signature(签名验证)。JWT 的优势是无状态(服务端不存 session),适合分布式系统。常见安全问题:算法混淆攻击(alg:none)、密钥泄露、Token 无法主动失效。最佳实践:使用短过期时间 + Refresh Token、验证算法和签名、不在 Payload 中存敏感信息。
JWT的应用场景
正式定义
基于 JSON 格式的自包含无状态身份认证令牌标准
应用场景
- API 的无状态身份认证
- 单点登录(SSO)的令牌传递
- 微服务间的身份传播
常见误区
- JWT 不是加密的,Payload 只是 Base64 编码,任何人都能读
- JWT 无法主动失效是设计缺陷,需要配合黑名单或短过期
- 不是所有场景都适合 JWT,传统 Session 有时更简单安全
实际案例
📌 JWT 安全事故
多个知名网站因 JWT 算法混淆漏洞(将 RS256 改为 HS256)被攻破,攻击者用公钥作为 HMAC 密钥伪造任意用户的 Token。
JWT的参考来源
关于JWT的常见问题
- JWT 和 Session 有什么区别
- Session 状态存服务端,JWT 自包含存客户端,JWT 适合分布式系统但无法主动失效,各有适用场景。
- JWT 有哪些安全风险
- 算法混淆攻击(none/HS256 伪造)、密钥泄露、Token 过长暴露敏感信息、无法主动吊销。