JWS, JWE, JWK, JWA, JWT
JWS:JSON Web Signature,Digital signature/HMAC specification(签名)
JWE:JSON Web Encryption,Encryption specification(加密)
JWK:JSON Web Key,Public key specification
JWA:JSON Web Algorithms,Algorithms and identifiers specification(算法)
JWT:JSON Web Token
什么是JSON Web Token
JWT是一种在两方之间传输信息的方法。
在JWT的主体中编码的信息被称为claims。JWT的扩展形式是JSON格式,因此每个claim都是JSON对象中的一个键。
JWTs可以加密签名(使它成为JWS)或加密(使它成为JWE)。
这为JWTs增强了可验证性。例如,接收者可以确定JWT没有通过验证签名来篡改。
JWT的组成
- Header: 标题包含了令牌的元数据,并且在最小包含签名和/或加密算法的类型
- Claims: Claims包含您想要签署的任何信息
- JSON Web Signature (JWS): 在header中指定的使用该算法的数字签名和声明
例:
Header:
{
"alg": "HS256",
"typ": "JWT"
}
Claims:
{
"sub": "1234567890",
"name": "John Doe",
"admin": true
}
Signature:
base64UrlEncode(Header) + "." + base64UrlEncode(Claims)
在