jwt流程

JWT

Json Web Tokens,用于前后端分离系统用户认证

组成

  • 第一段 Header
{
    "alg":"HS256",
    "typ":"JWT"
}
  • 第二段 Payload
    对json进行base64url加密
{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022 ,#过期时间
  ...
}
  • 第三段 把前两段的base密文通过.拼接起来,然后对其进行HS256加密,再然后对hs256密文进行base64url加密,最终得到token的第三段。
base64url(
    HMACSHA256(
      base64UrlEncode(header) + "." + base64UrlEncode(payload),
      your-256-bit-secret (秘钥加盐)
    )
)

base64url加密是先做base64加密,然后再将 - 替代 + 及 _ 替代 /

posted @ 2020-04-21 14:08  tangshuo!  阅读(135)  评论(0编辑  收藏  举报