JTW

article/2025/10/7 10:25:31

1.1.1.简介
JWT,全称是Json Web Token, 是JSON风格轻量级的授权和身份认证规范,可实现无状态、分布式的Web应用授权;官网:https://jwt.io
在这里插入图片描述
1.1.2.数据格式
JWT包含三部分数据:
Header:头部,通常头部有两部分信息:

  1. 声明类型,这里是JWT
  2. 加密算法,自定义

我们会对头部进行base64加密(可解密),得到第一部分数据
Payload:载荷,就是有效数据,一般包含下面信息:

  1. 用户身份信息(注意,这里因为采用base64加密,可解密,因此不要存放敏感信息)
  2. 注册声明:如token的签发时间,过期时间,签发人等 这部分也会采用base64加密,得到第二部分数据

Signature:签名,是整个数据的认证信息。一般根据前两步的数据,再加上服务的的密钥(secret)(不要泄漏,最好周期性更换),通过加密算法生成。用于验证整个数据完整和可靠性
在这里插入图片描述
1.1.3.JWT交互流程
1、用户登录
2、服务的认证,通过后根据secret生成token
3、将生成的token返回给浏览器
4、用户每次请求携带token
5、服务端利用公钥解读jwt签名,判断签名有效后,从Payload中获取用户信息
6、处理请求,返回响应结果
因为JWT签发的token中已经包含了用户的身份信息,并且每次请求都会携带,这样服务的就无需保存用户信息,甚至无需去数据库查询,完全符合了Rest的无状态规范。

1.1.4.加密
加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称密文),其逆过程就是解码(解密),加密技术的要点是加密算法,加密算法可以分为三类:
对称加密,如AES

基本原理:将明文分成N个组,然后使用密钥对各个组进行加密,形成各自的密文,最后把所有的分组密文进行合并,形成最终的密文。
优势:算法公开、计算量小、加密速度快、加密效率高
缺陷:双方都使用同样密钥,安全性得不到保证

非对称加密,如RSA

基本原理:同时生成两把密钥:私钥和公钥,私钥隐秘保存,公钥可以下发给信任客户端
私钥加密,公钥解密
公钥加密,私钥解密
优点:安全,难以破解 缺点:算法比较耗时

不可逆加密,如MD5,SHA

基本原理:加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,无法根据密文推算出明文。


http://chatgpt.dhexx.cn/article/olKUULAi.shtml

相关文章

JST简介

从JSP 1.1规范开始,JSP就支持在JSP中使用自定义标签了,自定义标签的广泛使用造成了程序员重复定义,这样就促成了JSTL(JavaServer? Pages Standard Tag Library)的诞生。作者:丁令(http:///www.DingL.com/…

JTA和JTS

JTA,即Java Transaction API,JTA允许应用程序执行分布式事务处理–在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。JTA事务比JDBC事务更强大。一个JTA事务可以有多个参与者,而一个JDBC事务则被限定在一个单一的数据库连接。…

JCST(Journal of Computer Science and Technology)Latex模板问题小结

1. 带圈脚注 \def\jz#1#2{{$^{\footnotesize\textcircled{\tiny #1}}$\let\thefootnote\relax\footnotetext{\!\!$^{\footnotesize\textcircled{\tiny #1}}$#2}}}\jz{1}{Content of the footnote} 2. 参考文献上标 \renewcommand\upcite[1]{\textsuperscript{\cite{#1}}}\up…

征稿丨IJCAI‘23大模型论坛,优秀投稿推荐AI Open和JCST发表

第一届LLMIJCAI’23 Symposium征稿中,优秀投稿论文推荐《AI Open》和 《JCST》发表。 大规模语言模型(LLMs),如ChatGPT和GPT-4,以其在自然语言理解和生成方面的卓越能力,彻底改变了人工智能领域。 LLMs广泛…

计算机国内最好的期刊(国内三大) + JCST

计算机国内最好的期刊(国内三大) JCST (2012-05-08 15:10:12) ▼ 都是EI核心来源期刊; 中国计算机学会参与主办是会刊; 科学出版社出版发行; 可接受8000-10000字左右的长文; 稿量大,处理流程大…

国内计算机八大学报

国内计算机八大学报 计算机学报 软件学报 计算机科学与技术学报(JCST) 在知网里搜不到计算机科学与技术学报或JCST,应该是因为它是英文文献,所以没收录。 计算机研究与发展 自动化学报 电子学报 通信学报 中国科学 有的时…

微信小程序实现轮播图

实现轮播图之前必须知道以下三点: 一、轮播图外层容器swiper 二、每一个轮播项swiper-item 三、swiper标签存在默认样式 1. width 100% 2. height 默认为 150px 3 .swiper高度无法实现由内容撑开 默认的150px高度的轮播图如下图: 原图是长这个样子的&#xf…

微信小程序—连接MQTT

1、在微信开发小程序工具中首先安装mqtt.js与mqtt.min.js到文件utils中,并在引用的.js文件中声明。 var mqtt require(../../utils/mqtt.min.js)2、可以选择公共的MQTT服务器,仅用于测试,较为方便,由EMQ提供。同时可参考EMQ提供的…

微信小程序解密并拆包获取源码教程

第一步:电脑端提取微信小程序包 一般在微信安装目录下的,比如我微信安装在d盘当中,那么下载的wxapkg包就在下方 D:\qq\wechatfile\WeChat Files\Applet那么微信小程序加载的wxapkg包都在这里 比如下方的一个微信小程序的包就在这里 第二步:解密wxapkg包 工具下载地址 https:/…

最新微信小程序反编译破解过程记录

一、前言 既然你进来看这篇文章,我认为“微信小程序反编译”这个技术你多少应该会了解点。在学习微信小程序前端开发的过程中,我跟大部分人一样,试着仿写过一些线上的小程序案例,但在实际练手中,别人的小程序对你来说…

记一次逆向破解微信小程序参数签名

前言 在一个平淡无奇的午后,接到一个新的活——对某微信小程序进行渗透测试。老规矩,倒了杯茶,准备开始新一天轰轰烈烈的干活(摸鱼)。 然鹅,BurpSuite 上号不到 2 min 我就发现今天的砖头有点烫手了&…

Flowable多实例加签减签功能正式上线

文章的最下面有学习视频与源代码 拒绝重复造轮子了,有这个流程平台就够了 概念 什么是加签 在一个多实例会签流程中,会签节点审批人有A、B两个人。当A领导登录的时候,看到当前节点只有两个人,责任承担比较大。 然后我们就想把C…

flowable6.4 并行网关 驳回 跳转 回退 多实例加签减签

目录 前言flowable6.4.2 不足之处并行网关跳转驳回BUG多实例加签减签BUG 解决之法说明用法 前言 flowable 优秀的工作流流程引擎框架,前身Activity 为什么要用工作流? 主要是应对: 流程可能随时变更步骤处理人可能变更并行任务处理分支任务…

工作流后加签实现

1、流程重新定义 动态改变流程指向,创建新的节点 2、后加签环节及后加签属性设置 流程持久化、克隆活动、独立CMD 3、原始流程操作及后加签环节操作 4、流程场景遍历 5、流程图元体现 BPM后加签V1.0版说明。 效果图示: 功能说明: 1、…

前后端RSA互相加解密、加签验签、密钥对生成(Java)

目录 一、序言二、关于PKCS#1和PKCS#8格式密钥1、简介2、区别 二、关于JSEncrypt三、关于jsrsasign四、前端RSA加解密、加验签示例1、相关依赖2、cryptoUtils工具类封装3、测试用例 五、Java后端RSA加解密、加验签1、CryptoUtils工具类封装2、测试用例 六、前后端加解密、加验签…

国密:SM2公私钥加签验签

一、工具类 POM中增加hutool <dependency><groupId>cn.hutool</groupId><artifactId>hutool-core</artifactId><version>5.6.5</version></dependency> package cn.test.encrypt.utils.sm2; /*** SM2签名所计算的值 可以根据…

RSA加签解签方法

一、RSA签名的过程 &#xff08;1&#xff09;A生成一对密钥&#xff08;公钥和私钥&#xff09;&#xff0c;私钥不公开&#xff0c;A自己保留。公钥为公开的&#xff0c;任何人可以获取。 &#xff08;2&#xff09;A用自己的私钥对消息加签&#xff0c;形成签名&#xff0…

安全对外的接口--加签验签

前言 我们在求职面试中,经常会被问到,如何设计一个安全对外的接口呢? 其实可以回答这一点,加签和验签,这将让你的接口更加有安全。接下来,本文将和大家一起来学习加签和验签。从理论到实战,加油哦~ 密码学相关概念加签验签概念为什么需要加签、验签加密算法简介加签验签…

程序员必备基础:加签验签

来源&#xff1a;捡田螺的小男孩 我们在求职面试中&#xff0c;经常会被问到&#xff0c;如何设计一个安全对外的接口呢? 其实可以回答这一点&#xff0c;加签和验签&#xff0c;这将让你的接口更加有安全。接下来&#xff0c;本文将和大家一起来学习加签和验签。从理论到实战…

RSA公私钥加密加签顺序

RSA是一种非对称加密的机制&#xff0c;是一对密钥对&#xff08;公钥和私钥&#xff09;。 一、加密&#xff1a; 1.公钥加密&#xff0c;私钥解密。可以多人持有公钥进行数据加密&#xff0c;仅一人持有私钥进行数据解密&#xff1b; 2.可以确保数据传输的安全性。 二、加签…