HTTP、HTTPS和SSL的加密过程

HTTP协议的特点

  1. 支持C/S模型(客户端/服务器模型)
  2. 简单快速:客户端向服务器请求服务时,只需传送请求方法和路径。请求的方法常用的有GET,POST,HEAD等,每种方法规定了客户端和服务器联系的类型不同。
  3. 灵活:HTTP允许传输任意类型的数据对象
  4. 无连接:无连接指的是客户端和服务器每一个链接值允许处理一个请求。服务器处理请求收到客户端的回复之后就会断开链接,这种方式可以节省传输时间
  5. 无状态:HTTP是无状态协议,无状态是指协议对事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样会导致每次链接传输的数据量增大;如果服务器不需要先前信息时它的应答会更快

HTTP的无状态

无状态是指协议对事务没有记忆能力,服务器不知道客户端是什么状态。简单的说就是客户端给服务器发送HTTP请求之后,服务器根据请求处理完事务发送给客户端,不会记录任何信息。

  1. HTTP是一个无状态协议,意味着每一个请求都是独立的
  2. 缺少状态意味着,每一个HTTP请求链接,服务器处理完不会记录任何信息,在后续还需要处理前面的信息时,前面的信息必须重新传递,这会造成传输的数据量增大
  3. HTTP协议的优点是解放了服务器,每一次请求“点到为止”,处理完事务之后,断开链接,不会造成资源的浪费。缺点是每次请求会传输大量的重复的数据信息
  4. 客户端和服务器进行动态交互的Web应用程序出现之后,HTTP无状态的特点严重阻碍了这些应用的实现,交互是需要承前启后的;简单的购物车程序也需要直到用户在之前选择了什么商品。所以用于保持HTTP状态的技术就应运而生,一个是Cookie,一个是Session
  5. Cookie可以保持登陆信息到用户下次与服务器的会话,下一次访问同一网站时,客户端不用输入用户名和密码就可以登陆了;当然不是所有的Cookie都是这样,有一些Cookie在用户退出时会删除信息,这样也会有效的保护个人隐私
  6. Cookie最常见的应用在与每一次登陆会判定用户是否已经登陆过网站,用户会根据提示是否保留密码,这样就会保留登陆信息,在下一次进入该网站时直接登陆;还有一个重要的应用场景就是上面提到的购物车,用户可能会在一段时间内在同一家网站的不同页面选择不同商品,这些数据都会写入Cookie,一遍在最后付款时全部处理

HTTP304缓存原理

        服务器会对申请的资源产生一个标记,在后面客户端通过将该标记传回服务器来判断自己缓存的页面是否已经被修改。304是HTTP状态码,服务器用来标识客户端申请的资源没有被修改,不返回内容,客户端接收到这个状态码后继续使用自己缓存的资源。具体的过程是这样的;

客户端请求一个页面A,服务器返回页面A,并给页面A加一个标记;客户端接收给页面,并且缓存该页面和标记;当客户端再次请求页面A时(将页面A和上次的标记传给服务器),服务器检查该标记是否已经改变,若是没有该改变则返回304和一个空的响应体

HTTPS

在HTTP和TCP之间加一个安全协议层SSL/TSL,这个时候就成了我们通常说的HTTPS。

HTTPS 使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性

HTTP和HTTPS的区别

  1. HTTP用的端口号是80号端口,HTTPS用的端口号是443
  2. HTTP是超文本传输协议,信息采用铭文传输,HTTPS是具有安全性SSL加密的传输协议
  3. HTTP协议建立链接的过程比HTTPS协议更快,因为HTTPS除了三次握手还要经历SSL握手;建立连接后传输数据的速度没有明显的差距

SSL原理和加密过程

SSL/TSL协议基本思想是采用公钥加密算法。大概流程是客户端向服务器索要公钥,然后用公钥加密,服务器收到密文,用自己的私钥解密。为了防止公钥被篡改,把公钥放在数字证书中,证书可信则公钥可信。公钥加密计算量很大,为了提高效率,服务端和客户端都生成对话密钥,用对话密钥加密信息,速度非常快;而公钥则用来加密对话密钥。

过程如下:

加密算法

加密算法分为对称加密、不对称加密和hash加密算法

对称加密:甲方和乙方使用相同的密钥进行加密和解密。加解密效率高,速度快,适合数据量比较大的加密。

非对称加密:乙方生成两把密钥,公钥和私钥。公钥是公开的,任何人都可以获得,私钥是保密的只存在乙方手中。非对称加密和解密速度慢,但安全性高,一般和对称加密结合使用。

Hash加密:Hash算法是一种单向密码体制,只有加密过程,没有解密过程。常见的Hash加密算法有MD5;

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值