JWT初认识
参考:http://www.ruanyifeng.com/blog/2018/07/json_web_token-tutorial.html
https://www.cnblogs.com/xiangkejin/archive/2018/05/08/9011119.html
好好研究了下jwt登录验证,跟之前的token登录验证有些许不同,记录下。
先来一张流程图
其实就是多了一份验签和格式规范化。
返回给前端的字符串按点分割开有三部分:
- Header(头部)
- Payload(负载)
- Signature(签名)
header
{
"alg": "HS256",// HMAC SHA256(写成 HS256)
"typ": "JWT"
}
payload
{
“iss”: “发行者”,
“sub”: 主题”,
“aud”: “受众”,
“exp”:”过期时间”,
“iat”:”签发时间”
// 以下可以添加自定义数据
“id”:”1”,
“name”:”昵称”
}
signature // 是对前两部分的签名验证,防止被篡改
// 公式如下 (secret是盐)
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret)
最后组成:base64(header)+base64(payload)+signature
本文作者:蜗牛使劲冲
本文链接:https://www.cnblogs.com/warrenwt/p/18074586
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步