JWT

代表“JSON Web Token”。

JWT 是一种行业标准的令牌,用于在双方之间共享安全信息。JWT 体积小且适合用于URL,因此Web 服务器和客户端可以在HTTPS请求中交换 JWT。JWT 最常见的用途是验证登录网站Web 应用的用户身份,通常通过单点登录(SSO)服务实现。

JWT 由三部分组成:

  • 标头包含令牌类型以及用于生成数字签名算法信息。
  • 载荷包含令牌所声明的一系列信息。这些声明通常包括令牌颁发者、使用令牌的网站或 Web 应用以及用户的信息。其中还包括令牌的颁发时间和过期时间两者都使用(纪元时间)。除了这些常见值之外,JWT 还可以包含颁发令牌的网站或 Web 应用定义的任意声明。
  • 签名用于验证令牌自颁发后未被篡改。

网站和 Web 应用通常使用 JWT 作为一种无状态的用户身份验证方法。它们不要求服务器在其内存数据库中维护会话,从而减少每个用户所需的开销。相反,客户端和服务器会在每个 HTTPS 请求中来回传递 JWT,并验证签名以确保令牌未被修改。JWT 过期后,用户必须重新登录,系统才会颁发新的 JWT。

创建 JWT

JWT 的标头和载荷都由用JSON编写的文本组成。标头和载荷分别使用一种名为 base64 的算法进行编码,将多行文本转换为一个字符串。编码后的标头字符串和载荷字符串会合并,并用“.”字符分隔。

标头和载荷经过编码并合并为一个字符串,该字符串经过哈希处理后用作签名
标头和载荷经过编码并合并为一个字符串,该字符串经过哈希处理后用作签名

包含编码后的标头和载荷的合并字符串会再次使用哈希算法和密钥进行编码,以创建签名。随后,签名会追加到标头和载荷的末尾,并用另一个“.”字符分隔,从而创建最终的 JWT。

更新日期 May 11, 2023 作者 Brian P.

quiz测试你的知识

What purpose does the Border Gateway Protocol (BGP) serve?

A
It routes data transmissions over the Internet.
0%
B
It protects devices within a specific network.
0%
C
It reduces network jitter for wireless devices.
0%
D
It breaks suspicious connections to a server.
0%
Correct! Incorrect!     View the BGP definition.
More Quizzes →

Tech Terms 计算机词典

本页中JWT的定义是由 TechTerms.com 的作者撰写的原创定义。如果您想引用本页或引用此定义,请使用定义正下方的绿色引用栏。

我们的目标是以简单易懂的方式解释计算机术语。我们努力使发布的每个定义都做到准确和简明。如果您对本定义有任何反馈,或想建议一个新的技术术语,请联系我们

Tech Terms 通讯

通过我们的每日或每周通讯提升您的技术知识!立即订阅,即可将新术语和测验发送到您的收件箱。

订阅免费的 TechTerms 通讯

您希望多久收到一封电子邮件?

您可以随时使用每封邮件中的链接取消订阅或更改接收频率。 有疑问?请联系我们

注意:通讯以英文发送。