Ticket机制

Ticket简介:把一些常用的不经常改变的信息打包发送给客户端,然后客户端每次请求的时候都把这个信息带过来,这样服务端就可以减少查库或者远程调用的次数

某逛商场,理发,洗浴,住宿,店主或老板在你消费之后会给你一张所谓的“会员卡”,等你再次来消费的时候,只需出示此卡,商家就会视你为其顾客,使你享受该有之优惠并采取积分措施并计入磁卡,此事之办成,全凭一张卡,此卡商家并不保留,而全由顾客持有,为防止会员卡伪造而骗取优惠,可能会员卡上会有一条磁条,该磁条作防伪只用,商家只需将卡在其特定机器上只一刷便可知卡之真伪。对比这个办法,如果会员信息全部保留在商家处而非顾客持有的磁卡,而顾客只需保留自己的姓名等认证信息,那么随着顾客的增加,商家保留的信息将膨胀,最终将商家阻滞在将要成功处。会员卡的方略旨在将信息保存在顾客处而不是商家,这样可以减轻商家的信息记录负担。
计算机信息科学和网络永远都是落后于时代的,会员卡早有人使用,可是在网络上提出类似的机制却只是最近才提出来,在c/s模式的应用或者协议中,服务器最好也由客户端来保持session信息以便恢复一次会话,而不是让客户端来保持各个客户端的session状态,这个办法我可以将之视为ticket机制,也就是服务器会发给客户端一张ticket,要求服务器做某事时,客户端只需要出示一下ticket即可,类似顾客的会员卡。在实际应用中tcp协议的syn cookie机制就是这么做的,这样可以防止tcp半连接攻击,另外tls协议的TicketSession机制也是如此,以往ssl客户端的session信息都是保留在服务器端的,而ticketsession机制可以将信息作为一张ticket保留在客户端,这张ticket是一段加密的信息,所有的ssl客户端的ticket都由服务器端的同一个密钥加密,内中包括该客户端的master secret,它被服务器传给客户端之后,和客户端的master secret保留在一起,待客户端需要恢复一个session时,只需将此加密的ticket传给服务器,服务器用同一个密钥解密之,然后取出对应的客户端信息和master secret,恢复session后继续通信,这样可以保证不在服务器端保留任何客户端的session信息。tcp的syn cookie也一样,tcp服务器将对客户端的syn-ack的seq设置成一个用同一个密钥加密后的数据,然后在客户端最后握手阶段的ack中取出ack号,然后解密之,验证之...
如果理解了会员卡机制,这种计算机网络中的“票据”机制就很好理解了。

原文地址:https://www.cnblogs.com/maji233/p/11620214.html

时间: 2024-10-09 23:22:01

Ticket机制的相关文章

High Performance Browser Networking - TCP UDP TLS

时延 时延的定义和标准 时延简单的说是从原点到目标点传送一条信息或者一个数据包,所花费的时间. 时延=发送时延+传播时延+处理时延+排队时延: Propagation delay 传播时延 传播时延这个概念,是指电磁信号或者光信号在传输介质中传输的时延,而在光纤或者铜线中,光信号和电磁信号的传播速度都在20万公里/秒以上,在传输介质中传输的是电磁信号或者光信号,而不是数据! Transmission delay 传送时延 发送时延是指结点在发送数据时使数据块从结点进入到传输媒体所需的时间,也就是

网络协议之TLS

前言 由于在TCP.UDP等方式传输数据时,数据包有可能被其他人截获,并解析出信息,这就给信息安全带来了很大的挑战.最初的SSL协议被网景公司提出,它不会影响上层协议(如HTTP.电子邮件等),但可以保证上层协议的通信安全.如果正确的使用SSL,第三方只能推断连接的两端地址.加密类型,以及数据频率和发送的大概数据量,但无法读取或修改任何实际数据.IETF后来在标准化SSL协议时,将其改为了TLS.很多人会混用SSL与TLS,但严格来说它们指代的协议版本不同(SSL3.0的升级版才是TLS1.0)

Hadoop的集群管理与安全机制

HDFS数据管理 1.设置元数据与数据的存储路径,通过 dfs.name.dir,dfs.data.dir,fs.checkpoint.dir(hadoop1.x). hadoop.tmp.dir,dfs.namenode.name.dir,dfs.namenode.edits.dir,dfs.datanode.data.dir(hadoop2.x)等属性来设置: 2.经常执行HDFS文件系统检查工具FSCK,eg:hdfs fsck /liguodong -files -blocks: [[e

线程的同步机制

1 线程安全问题的原因:由于一个线程在操作共享数据过程中,未执行完毕的情况下,另外的线程有参与进来,导致共享数据存在安全问题 2 解决方法:必须让一个线程操作共享数据完毕以后,其它线程才有机会参与共享数据的操作 3 java如何实现线程的安全,现成的同步机制 synchronized(同步监视器){  //需要被同步的代码块(操作共同数据的代码)} 同步监视器:右任何一个类的对象充当,哪个线程获取此监视器,就执行大括号里被同步的代码 1)同步代码块 class Window2 implement

利用CURL命令调用WebHDFS REST API与Kerberos机制

1. CURL安装 cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行.它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具.cURL还包含了用于程序开发的libcurl.CURL官方网站:http://curl.haxx.se/ 1.1 Linux安装 这个网上资料比较多,只要搜索"curl 安装 linux"就应该有不少介绍. 1.2 Windows安装 这篇博客介绍了windows下的安装:http://blog.csdn.net

Java反射机制实现微信公众平台XML数据解析

在做微信公众平台开发时,接收消息中有很多种类型的xml消息,比如"文本消息""图片消息""语音消息""视频消息""链接消息""地理位置消息"等等,最初在开发时针对每一种数据格式写了一个实体类,单独做解析,当然这样写的好处是层次分明.但经过尝试之后,用一个统一的实体类消息做处理,更加高效,当然,里面最核心的就是在遍历xml数据时,通过反射的机制动态调用set方法: 1.ReceiveXml

使用token机制来验证用户的安全性-b

登录的业务逻辑{    http:是短连接.         服务器如何判断当前用户是否登录?        // 1. 如果是即时通信类:长连接.    // 如何保证服务器跟客户端保持长连接状态? // "心跳包" 用来检测用户是否在线!用来做长连接! http:短连接使用token 机制来验证用户安全性 // token 值: 登录令牌! 用来判断当前用户的登录状态!        // token 值特点: 是一个字符串/大整数,只需要保证唯一性.是服务器根据用户的信息(账号/

Linux内核同步机制--转发自蜗窝科技

Linux内核同步机制之(一):原子操作 http://www.wowotech.net/linux_kenrel/atomic.html 一.源由 我们的程序逻辑经常遇到这样的操作序列: 1.读一个位于memory中的变量的值到寄存器中 2.修改该变量的值(也就是修改寄存器中的值) 3.将寄存器中的数值写回memory中的变量值 如果这个操作序列是串行化的操作(在一个thread中串行执行),那么一切OK,然而,世界总是不能如你所愿.在多CPU体系结构中,运行在两个CPU上的两个内核控制路径同

HDFS源码分析(二)-----元数据备份机制

前言 在Hadoop中,所有的元数据的保存都是在namenode节点之中,每次重新启动整个集群,Hadoop都需要从这些持久化了的文件中恢复数据到内存中,然后通过镜像和编辑日志文件进行定期的扫描与合并,ok,这些稍微了解Hadoop的人应该都知道,这不就是SecondNameNode干的事情嘛,但是很多人只是了解此机制的表象,内部的一些实现机理估计不是每个人都又去深究过,你能想象在写入编辑日志的过程中,用到了双缓冲区来加大并发量的写吗,你能想象为了避免操作的一致性性,作者在写入的时候做过多重的验