session,cookie,jwt的简单使用
cookie的使用
https://blog.csdn.net/qq_58168493/article/details/122492358
session的使用
https://blog.csdn.net/qq_45593068/article/details/108585123
jwt,cookie,session关系
https://mp.weixin.qq.com/s/5oFKdbFWgZrwqESNTZn77w
jwt与cookie
https://blog.csdn.net/weixin_45070175/article/details/118559272
个人理解:
cookie,session
cookie是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。
Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
用户使用浏览器访问,直到退出,为一个session(会话),浏览器首先判断用户是否是否有cookie,如果没有,用户输入用户名密码登陆后, 服务器会创建一个;如果有,则可以直接访问需要登陆的页面。
服务器创建的cookie里面包含了用户名,密码(加密后),由服务器发送给浏览器,在浏览器之中保存;
在下次登陆时,浏览器携带cookie在request header之中,一起发送给服务器,这样就不再需要用户的二次登陆
session保存在服务器中,cookie保存在浏览器中。
session,token
但是随着用户量的增大,需要负载均衡(使用多台服务器),「如果继续使用session,会造成一个用户在一次的使用中,创建了多个session,所以为了避免这种情况,可以使用jwt」
JWT,即json web token是由3部分组成的,header、payload、signature
header声明使用的签名算法,
payload保存一些数据,比如用户uid,但是不能携带密码等敏感数据,
signature:签名,server根据header使用签名算法,再用密钥对header+payload进行签名
注:签名算法:其共同特点是不可逆,其他的签名算法,比如MD5,sha等等
公钥私钥:使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。
如用公钥加密数据就必须用私钥解密,如果用私钥加密也必须用公钥解密
header、payload:是以一种编码形式存在
jwt可存放在浏览器的cookie/storage中,但是jwt很长,一般存放于storage
为什么使用了签名,就可以防止篡改?
——有两种签名加密方式,对称和非对称加密;非对称加密中,私钥进行加密,公钥进行解密;
私钥首先对原本的文件进行哈希运算,然后进行签名运算(加密),得到数字签名。「此数字签名可以被公钥解密」
公钥对签名进行解密运算,可以得到私钥签名的哈希值,和当前文件的哈希值比较,就可以知道文件的内容是否被篡改。
为了确保签名的文件不被其他人使用他们的私钥签名修改,还需要加上CA数字证书。
总结:


session,cookie,jwt的简单使用的更多相关文章
- 认证 协议 JWT OAuth Session Cookie
本文翻译自Auth-Boss. 如果有翻译的不恰当或不对的地方, 欢迎指出. 成为一个认证老司机, 了解网络上不同的身份认证方法. 本文档的目的是记录和编目Web上的身份验证方法.认证指的是创建一个系 ...
- 快速了解会话管理三剑客cookie、session和JWT
更多内容,欢迎关注微信公众号:全菜工程师小辉.公众号回复关键词,领取免费学习资料. 存储位置 三者都是应用在web中对http无状态协议的补充,达到状态保持的目的 cookie:cookie中的信息是 ...
- java基础之----cookie,session,jwt
概要 web中为什么要引入cookie.session机制,为了验证用户的身份,验证用户的身份是为了系统的安全,那如果是系统和系统之间的API调用怎么办呢?因为系统之间调用往往是没有用户系统的(用户系 ...
- cookie,session,jwt,token,oauth2联系和区别
为啥有这么多的东西? 由于互联网在刚开始设计的时候是展现静态网页为主,没有现在这么多的交互和互动,所以被设计为了无状态,随用随走的简单模式.随着互联网的发展,各种具有和用户交互功能的网站出现,要求用户 ...
- 【项目实践】一文带你搞定Session和JWT的登录认证方式
以项目驱动学习,以实践检验真知 前言 登录认证,估计是所有系统中最常见的功能了,并且也是最基础.最重要的功能.为了做好这一块而诞生了许多安全框架,比如最常见的Shiro.Spring Security ...
- session & cookie(li)
Session & Cookie 一.定义 Session,用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所花费的时间.Cookie,由服务器端生成,发送 ...
- web也是区分前端与后端的,session\cookie辨析
<1>Ajax交互方式 Ext.Ajax.request( { //被用来向服务器发起请求默认的url url : "", //请求时发送后台的参数,既可以是Json对 ...
- http之Session&Cookie
百度了一波session与Cookie,我发现这东西远比我想象中更复杂(可能是因为我不明白底层的运行原理).网上也是一堆的关于Session与Cookie区别/联系的文章,然而,我看完了还是一脸懵逼的 ...
- Asp.net MVC使用Filter解除Session, Cookie等依赖
本文,介绍了Filter在MVC请求的生命周期中的作用和角色,以及Filter的一些常用应用场景. 同时针对MVC中的对于Session,Cookie等的依赖,如何使用Filter解依赖. 如果大家有 ...
随机推荐
- windows和linux系统下测试端口连通性的命令
0. ping 1. telnet 2. ssh 3. curl 4. wget 5. tcping 6. 总结 本文地址: https://www.cnblogs.com/hchengmx/p/12 ...
- Vue数据双向绑定原理(vue2向vue3的过渡)
众所周知,Vue的两大重要概念: 数据驱动 组件系统 1 2 接下来我们浅析数据双向绑定的原理 一.vue2 1.认识defineProperty vue2中的双向绑定是基于definePropert ...
- SAP Easy tree
*&---------------------------------------------------------------------* *& Include SIMPLE_T ...
- js 表面学习 - 认识结构
JavaScript 语句由以下构成: 值.运算符.表达式.关键词和注释. 这条语句告诉浏览器在 id="demo" 的 HTML 元素中输出 "Hello Kitty. ...
- 会话技术 Cookie+Session
会话:这种在多次HTTP连接间维护用户与同一用户发出的不同请求之间关联的情况称为维护一个会话(session) 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开: 功能:在一次会话 ...
- 【python基础】第05回 数据类型,交互,格式化输出,运算符
上节内容回顾 1.python的注释 # 单行注释 pycharm快捷键:ctrl+? '''多行注释''' """多行注释""" 2.py ...
- Python 中多线程共享全局变量的问题
写在前面不得不看的一些P话: Python 中多个线程之间是可以共享全局变量的数据的. 但是,多线程共享全局变量是会出问题的. 假设两个线程 t1 和 t2 都要对全局变量g_num (默认是0)进行 ...
- docker-compose: 未找到命令,安装docker-compose
1.安装扩展源 sudo yum -y install epel-release 2.安装python-pip模块 sudo yum install python-pip 3.通过命令进行安装 cd ...
- svn :不能打开文件“/data/svn/repo/format”: 权限不够
解决方法:关闭selinux vi /etc/sysconfig/selinux 将其中的SELINUX=enforcing 改为SELINUX=disabled 即可.
- 爬虫(2) - Requests(1) | Requests模块的深度解析
1.Requests 安装与请求方法 requests官方文档:https://docs.python-requests.org/zh_CN/latest/,官方文档不知道为什么挂了,访问不了.我找了 ...