关于HTTP 和 HTTPS

什么是http?

超文本传输协议【Http, HyperText Transfer Protocol】是互联网上应用最为广泛的一种网络协议,设计Htto最初的目的是提供一种发布和接收HTML页面的方法,他可以是浏览器更加高效。Http协议是以明文方式发送信息的,如果黑客截取了Web浏览器和服务器之间的传输报文们就可以直接获取信息。

HTTP状态码分类

  • 100-199:提示信息——表示请求正在处理
  • 200-299:成功——表示请求正常处理完毕
  • 300-399:重定向——要完成请求必须进行更进一步的处理
  • 400-499:客户端错误——请求有语法错误或请求无法实现
  • 500-599: 服务器端错误——服务器处理请求出错

常见的状态码有哪些?

  1. 200:请求成功,浏览器会把响应体内容(通常是html)显示在浏览器中

  2. 301/302/303:(网站搬家了,跳转)重定向

  3. 304:代表上次的文档已经被缓存了,还可以继续使用,如果你不行使用本地缓存可以强制刷新页面

  4. 400:语义有误,当前的请求无法被服务器理解。

  5. 401:当前的请求需要用户验证

  6. 403:服务器已经理解请求,但是拒绝执行

  7. 404:(客户端问题)请求的资源没有找到

  8. 500::(服务器问题)请求资源找到了,但是服务其内部发生不可预期的错误

  9. 503:并发过多,服务器处理不了

什么是HTTPS?

是以安全为目标的Http通道,是Http的安全版。Https的安全基础是SSL。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持,SSL协议可分为两层:SSL记录协议,它建立在可靠的传输协议之上,为高层协议提供数据封装,压缩、加密等基本的支持。SSL握手协议。他建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法,交换加密秘钥等

HTTPS安全原理解析

HTTPS主要是由两部分组成:HTTP+SSL/TLS,也就是在HTTP上加上了一层处理加密信息的模块,服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据

关于HTTP 和 HTTPS_第1张图片

HTTP和HTTPS的区别

  1. HTTP是超文本传输协议,信息是明文传输,HTTPS是具有安全性的SSL加密传输协议
  2. HTTPS协议需要ca【证书】申请证书。一般免费证书少,因为需要一定的费用
  3. HTTP和HTPPS使用的是完全不同的链接方式,用的端口也不一样,前者是80,后者用的是443
  4. HTTP连接是无状态的,HTTP协议是有SSL+HTTP协议构建的可进行加密的传输,身份认证的网络协议,安全性高于HTTP协议

HTTPS协议的优点

虽然https现在并非绝对安全,掌握根证书的机构、掌握加密算法的阻止同样可以进行中间人形式的共计,但HTTPS架构目前仍是最安全的架构解决方案

  1. 使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器;
  2. HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。
  3. HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本

HTTPS协议的缺点

  1. HTTPS协议握手阶段比较费时,会是页面的加载时间延长
  2. HTTPS链接缓存不如HTTP高效,会增加数据的开销,甚至已有的安全措施也会因此收到影响
  3. SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗
  4. HTTPS协议的加密范围比较有限,最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

你可能感兴趣的:(javascript,http,https,网络协议)