服务器主机名讲解 服务器主机名是什么意思( 四 )


3.4、数字签名我们把证书内容生成一份“签名” , 比对证书内容和签名是否一致就能察觉是否被篡改 。这种技术就叫数字签名 。
数字签名制作过程:CA拥有非对称加密的私钥和公钥 。CA对证书明文信息进行hash 。对hash后的值用私钥加密 , 得到数字签名 。明文和数字签名共同组成了数字证书 , 这样一份数字证书就可以颁发给网站了 。那浏览器拿到服务器传来的数字证书后 , 如何验证它是不是真的?(有没有被篡改、掉包)
浏览器验证过程:拿到证书 , 得到明文T , 数字签名S 。用CA机构的公钥对S解密(由于是浏览器信任的机构 , 所以浏览器保有它的公钥 。详情见下文) , 得到S’ 。用证书里说明的hash算法对明文T进行hash得到T’ 。比较S’是否等于T’ , 等于则表明证书可信 。4. Session、Cookie & Token4.1、cookieHTTP协议本身是无状态的 。什么是无状态呢 , 即服务器无法判断用户身份 。**cookie是由Web服务器保存在用户浏览器上的小文件(key-value格式) , 包含用户相关的信息 。**客户端向服务器发起请求 , 如果服务器需要记录该用户状态 , 就使用response向客户端浏览器颁发一个Cookie 。客户端浏览器会把Cookie保存起来 。当浏览器再请求该网站时 , 浏览器把请求的网址连同该Cookie一同提交给服务器 。服务器检查该Cookie , 以此来辨认用户身份 。4.2、sessionsession是依赖Cookie实现的 。session是服务器端对象session 是浏览器和服务器会话过程中 , 服务器分配的一块储存空间 。服务器默认为浏览器在cookie中设置 sessionid , 浏览器在向服务器请求过程中传输 cookie 包含 sessionid  , 服务器根据 sessionid 获取出会话中存储的信息 , 然后确定会话的身份信息 。典型的场景是购物车 , 当你要添加商品到购物车的时候 , 系统不知道是哪个用户操作的 , 因为 HTTP 协议是无状态的 。服务端给特定的用户创建特定的 Session 之后就可以标识这个用户并且跟踪这个用户了 。cookie与session区别存储位置与安全性:cookie数据存放在客户端上 , 安全性较差 , session数据放在服务器上 , 安全性相对更高;存储空间:单个cookie保存的数据不能超过4K , **很多浏览器都限制一个站点最多保存20个cookie , **session无此限制占用服务器资源:session一定时间内保存在服务器上 , 当访问增多 , 占用服务器性能 , 考虑到服务器性能方面 , 应当使用cookie 。4.3、TokenToken的引入:Token是在客户端频繁向服务端请求数据 , 服务端频繁的去数据库查询用户名和密码并进行对比 , 判断用户名和密码正确与否 , 并作出相应提示 , 在这样的背景下 , Token便应运而生 。
Token的定义:Token是服务端生成的一串字符串 , 以作客户端进行请求的一个令牌 , 当第一次登录后 , 服务器生成一个Token便将此Token返回给客户端 , 以后客户端只需带上这个Token前来请求数据即可 , 无需再次带上用户名和密码 。
使用Token的目的:Token的目的是为了减轻服务器的压力 , 减少频繁的查询数据库 , 使服务器更加健壮 。
Token 是在服务端产生的 。如果前端使用用户名/密码向服务端请求认证 , 服务端认证成功 , 那么在服务端会返回 Token 给前端 。前端可以在每次请求的时候带上 Token 证明自己的合法地位


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: