浅析JWT| JWT是啥子,Java构建JWT

本文介绍了JWT的概念,JWT作为会话标识的安全性,以及JWT的构成和特点。通过实例展示了如何在Java中使用jjwt框架生成和验证JWT,强调了JWT在安全传输和信息存储中的注意事项。
摘要由CSDN通过智能技术生成

小声bbb

说到系统的安全识别,记得自己第一个项目,用的就是session,用户登录进来以后,给他session标记登录,记录id进去,轻轻松松,设计的操作也很简单,类似操作HashMap。
这大概也有1年多快两年了,现在回头看真的是可怕,几乎在裸奔

众所周知,平常使用的Session是存储在服务器的一种技术,可以理解为一个会话id,每次使用HTTP请求,都会携带一个sessionId,服务器根据这个SessionId去找对应的session

session一遍是和cookie搭配使用的,cookie是不安全的,毋容置疑(很多浏览器没限制读取),session则是系统生成的一个较长的sessionId,在过期时间内破解session比较困难。
关于session安全性文章,搜一下csdn,很多的
Session安全性

しかし,我预判了你的预判
在这里插入图片描述

Session可以理解为是存储在服务器端,key叫sessionId的一个map结构。
Session类似于打电话(没有来电号码显示),在一开始你表明了自己的身份,通话结束后,就失去了效果(实际上使用的是过期的手段)。
当访问的数量增加,记录登录成为一个很大的压力(有记录,有过期操作等,每个人的session信息都要进行维护,且需要存储),是否有一种服务器不用操心的办法?
那么下面就是JWT(或者叫Token)发光发热的舞台了!
在这里插入图片描述

只是为了构建JWT请快步到相应的位置

啥是JWT

JWT的全称JSON Web Token
在这里插入图片描述这里我先简单说一下JWT是个啥东西,然后分析为什么好用
JWT可以看做一个身份证,
众所周知,身份证有这几个特性:

  • 身份证不能伪造(别动歪脑筋)
  • 身份证上有个人信息
  • 身份证上有签发机关
  • 身份证上有有效期

事实上,这几乎就是JWT了

JWT的特性完全相同,甚至可以用理解身份证的角度来理解他

  1. 你的网站签发一个令牌(跟我念:身份证)
  2. 客户端拿着这个令牌找你访问
  3. 你用你三岁就发明的识别机对令牌(身份证)识别
  4. 你已经明白他是自己人了,并邀请他一起进来看电视
  5. 以下为收费项目~~

在这里插入图片描述咳咳,不搞hs,回到正轨,通过我们一本正经的分析,
我们不难发现:Token可以做到在你脸前裸奔,但你却无可奈何
盘点主要特性:

  • 存储简单的信息,并且大家都能获取信息
  • 无法作假
  • 存在过期

其中第一点很重要,token里面的信息是公开的,所以别放密码.

这里插一嘴,jwt里面的信息确实是公开的,只不过大家都进行了二次加密,让人感觉好像jwt里面的信息是不公开的

@某大学某实验室的某学弟

细说JWT

JWT通常情况下是三段,但是也存在一些丧心病狂的,把token又加密了一遍(内行,我直呼内行)
下面是官方给的一个demo(例子)
这个网站也是可以访问的,可以自己试着玩,也可以用来测试
https://jwt.io/
在这里插入图片描述其中很明显为三个部分:HEADER(头部

评论 64
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值