-
Cookie
一个HTTP cookie的(也称为网络Cookie,互联网的cookie,浏览器cookie,或者干脆饼干)是一小块从发送的数据的网站用户的并存储在用户的计算机上的网页浏览器,而用户浏览。Cookie旨在成为网站记住有状态信息(例如在线商店购物车中添加的项目)或记录用户浏览活动(包括点击特定按钮,登录)的可靠机制,或记录过去访问过的页面)。它们还可用于记住用户先前在表单字段(如姓名,地址,密码和信用卡号)中输入的任意信息。
其他类型的cookie在现代网络中执行基本功能。也许最重要的是,身份验证cookie是Web服务器用于了解用户是否已登录以及用户登录的帐户的最常用方法。如果没有这样的机制,站点将不知道是否发送包含敏感信息的页面,或者要求用户通过登录进行身份验证。身份验证cookie的安全性通常取决于发布网站的安全性和用户的Web浏览器,以及cookie数据是否加密。安全漏洞可能允许黑客读取cookie的数据,用于访问用户数据,或用于访问cookie(使用用户的凭据)到cookie所属的网站(请参阅跨站点脚本和跨站点请求伪造示例)。[1]
跟踪cookie,尤其是第三方跟踪cookie,通常用作编制个人浏览历史记录的长期记录的方式 - 这是一个潜在的隐私问题,促使欧洲[2]和美国立法者在2011年采取行动。[3 ] [4]欧洲法律要求所有针对欧盟成员国的网站在将非必要的cookie存储在其设备上之前,必须获得用户的“知情同意”。
Google Project Zero研究员Jann Horn描述了中间商(如Wi-Fi热点提供商)可以读取cookie的方式。他建议在这种情况下以隐身模式使用浏览器。[5]
-
session
在计算机科学中,特别是在网络中,会话是两个或更多个通信设备之间或计算机和用户之间的临时和交互式信息交换(参见登录会话)。会话在某个时间点建立,然后在某个稍后的时间点“拆除” - 结束。建立的通信会话可以在每个方向上涉及多于一个消息。会话通常是有状态的,这意味着至少有一个通信方需要保存当前状态信息并保存有关会话历史的信息以便能够进行通信,而不是无状态 通信,其中通信由具有响应的独立请求组成。
已建立的会话是执行面向连接的通信的基本要求。会话也是在无连接通信模式下传输的基本步骤。但是,任何单向传输都不会定义会话。[1]
通信传输可以被实现为在协议和服务的一部分的应用层,在会话层或在传输层中的OSI模型。
在不实现正式会话层(例如,UDP)的传输协议或者应用层的会话通常非常短暂(例如,HTTP)的情况下,会话由更高级别的程序使用定义的方法维护。在交换的数据中。例如,浏览器和远程主机之间的HTTP交换可以包括HTTP cookie,其识别状态,例如唯一会话ID,关于用户的偏好或授权级别的信息。
HTTP / 1.0被认为只允许在一个Web / HTTP会话期间发出单个请求和响应。协议版本HTTP / 1.1通过完成通用网关接口(CGI)改进了这一点,使维护Web会话和支持HTTP cookie和文件上载变得更加容易。
大多数客户端 - 服务器会话由传输层维护 - 单个会话的单个连接。但是,Web / HTTP会话的每个事务阶段都会创建一个单独的连接。维持阶段之间的会话连续性需要会话ID。的会话ID嵌入在<A HREF>或<FORM>的链路内动态网页,以便它被传递回给CGI。然后,CGI使用会话ID来确保事务阶段之间的会话连续性。每个连接一个连接的一个优点是它在低带宽(调制解调器)连接上运行良好。
ps:本博文摘自:
https://en.wikipedia.org/wiki/Session
https://en.wikipedia.org/wiki/HTTP_cookie