首页 > 其他分享 >jwt验证机制

jwt验证机制

时间:2023-04-12 14:34:08浏览次数:34  
标签:验证 jwt header token signature 字符串 机制 payload

jwt数据结构为

1.header头:{"type":"JWT"}

2.payload:有效载荷

3.signature签名 防止篡改

 

服务器和客户端jwt交互过程

服务器给出token的时候:

1.前提:账号密码验证通过 得到用户信息或者其他信息(过期时间等) 往header或者payload里面塞

2. base64urlEncode(header)+"."+base64urlEncode(payload)   加密后得到字符串  header.payload  

3.用HMACSHA256不可逆加密算法+公钥(公开的解密钥匙) 对xxx.yyy 加密 得到固定长度b -目的是把内容变短

4.然后用加密钥把b 加密 得到字符串signature 所以最终生成的jwt token=header.payload.signature

客户端拿到token:header.payload.signature

1.先拿到公钥 对signature解密得到字符串c(能加开证明秘钥是对的 说明zzz来自服务器

2.然后对header.payload进行HMACSHA256加密 得到字符串D  比对d和字符串C 相同则证明token没有被篡改

 

标签:验证,jwt,header,token,signature,字符串,机制,payload
From: https://www.cnblogs.com/LZXX/p/17309696.html

相关文章

  • 用Abp实现两步验证(Two-Factor Authentication,2FA)登录(二):Vue网页端开发
    @目录发送验证码登录退出登录界面控件获取用户信息功能项目地址前端代码的框架采用vue.js+elementUI这套较为简单的方式实现,以及typescript语法更方便阅读。首先添加全局对象:loginForm:登录表单对象twoFactorData:两步验证数据,showTwoFactorSuccess:是否显示两步验证成......
  • java事件处理机制
     事件源可以是一个键可以是一个鼠标可以是一个按钮.....发生了就是事件源事件就是事件的对象,当事件源发生了就会有事件对象(事件对象就会传递给事件监听者)事件监听者接受刀事件对象了之后会进行事件处理方法   ......
  • 23.text--生成验证码
    生成验证码内容:可以是小写字母,也可以是大写字母,还可以是数字规则:长度为5,内容是四位字母,一位数字,其中数字只有1位,但是可以出现在任意位置publicstaticvoidmain(String[]args){//创建含有大小写字母的数组char[]letterArr=newchar[52];//小写字母在ASC......
  • Kubernetes客户端认证(二)—— 基于ServiceAccount的JWTToken认证
    1、概述在Kubernetes官方手册中给出了“用户”的概念,Kubernetes集群中存在的用户包括“普通用户”与“ServiceAccount”,但是Kubernetes没有普通用户的管理方式,通常只是将使用集群根证书签署的有效证书的用户都被视为合法用户。那么对于使得Kubernetes集群......
  • PCIe扫盲——中断机制介绍(INTx)
    一个简单的PCI总线INTx中断实现流程,如下图所示。1.    首先,PCI设备通过INTx边带信号产生中断请求,经过中断控制器(InterruptController,PIC)后,转换为INTR信号,并直接发送至CPU;2.    CPU收到INTR信号置位后,意识到了中断请求的发生,但是此时并不知道是什么中断请求。于是通过......
  • 58、K8S-监控机制-Prometheus-自定义metrics
    Kubernetes学习目录1、安装python环境1.1、下载python软件wgethttps://www.python.org/ftp/python/3.9.16/Python-3.9.16.tgz1.2、安装依赖包yuminstallgccgcc-c++glibc-develglibczlib-develzlibopenssl-developensslsqlite-develreadline-develbzip2-devel......
  • wow 闪屏幕可能处理方法(待验证)
    http://bbs.ngacn.cc/read.php?tid=3355682你是不是优化过,看注册表里面的hungapptimeout是多少,如果没有,就在HKEY_CURRENT_USER\ControlPanel\Desktop\下添加,将它的值改高,我设置的是30000,默认5000不够......
  • 加载中,三点循环机制
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>加载动画</title></head><style>.dotting{margin:20%auto;width:150px;}.dotting{margi......
  • 使用python库解决登录的验证码识别-图片验证码
    前言:在UI自动化测试和爬虫测试中,验证码是个比较头疼的问题,包括:图片验证码,滑块验证码,等一些常见的验证码场景。识别验证码的python库有很多,用起来也并不简单,这里推荐一个简单实用的识别验证码的库ddddocr(带带弟弟ocr)库。今天先用一个图片验证码示例来演示下:准备:1.安装库d......
  • WiredTiger的日志和检查点机制
    1.日志·对于每个写操作,mongodb将改变写入日志文件,即事务日志文件。写入的频率收到storage.journal.commitIntervalMs参数的控制。默认是100毫秒,可取值的范围是1--500毫秒。·WT缓存中的页数据也会被标记为脏数据日志文件的格式示例:$wtprintlog-u-x{"lsn":[15,256],......