JWT是什么
JWT即JSON Web Token,它是一个非常轻巧的规范,它可以允许我们在用户和服务器之间传递安全可靠的信息。它的实质其实就是一个字符串,由头部(Header)、载荷(Payload)与签名(Signature)三部分组成。
其中:
Header的作用是描述JWT的最基本的信息,例如:类型、签名的算法;
Payload中则是存放着用户的信息或者是想要返回给用户的内容,是一个装载信息的容器;
Signature其实就是一个对信息进行加密的一个过程,在其中我们还需要提供一个key来作为密钥,从而对传输的内容进行一个加密。
JWT适合在什么时候用
由于签名是对Header和Payload的加密的过程,加密的密钥其实是比较单一的,因此很容易被不怀好意的人通过一些解码破译。所以说在JWT中尽量还是要存储一些不太敏感的数据,避免对用户造成损失。
正是因为这一信息非敏感性,所以我们往往会将其用于一些用户简单不会涉及隐私泄密的操作,又或者是用于设计用户认证和授权系统,甚至用于Web应用的单点登录等。