jwt介绍

Posted QQ_851228082

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jwt介绍相关的知识,希望对你有一定的参考价值。

适用场景

一般登陆后,保存到客户端,请求时,jwt信息放在请求头Authorization中,服务器端判断Authorization来区分是否登录。

简介

jwt=json web token,由三部分组成header、payload、sign,这三部分用点号分隔header.payload.sign。

header

header表示加密算法;

{
  "alg": "HS256",
  "typ": "JWT"
}

之后,将header做base64处理;

payload

payload就是内容,payload也叫claim,有三种类型,一种是registered claim、public claim、private claim,推荐使用registered

  • registered,就是比较通用的数据项,含有iss (issuer), exp (expiration time), sub (subject), aud (audience), and others,为什么calim名称都是3个字母?这是为了减小大小;此种,推荐使用但不是强制的。
  • public,就是好多名字已经注册到jwt registry,比如这个链接,里边包含所有已经注册的名字,还有
  • private就是自己定义的。

然后将payload做base64处理;

Signature

最后一部分是Signature,签名可以防止数据被篡改,也可以用来证明发送者身份,就是将header、payload、secret做个签名。比如使用了HMACSHA256算法,则签名等于

HMACSHA256(
  base64UrlEncode(header) + "." +
  base64UrlEncode(payload),
  secret)

最终效果可以通过在线尝试
在这里插入图片描述

以上是关于jwt介绍的主要内容,如果未能解决你的问题,请参考以下文章

JWT在线解码网址和结构介绍

Android课程---Android Studio使用小技巧:提取方法代码片段

JWT 介绍 详解

玩转 SpringBoot 2 之整合 JWT 上篇

Java - JWT的简单介绍和使用

jwt-go库介绍