我们使用浏览器访问一个网站页面,在浏览器的地址栏中我们会看到一串URL,如图

 网站的URL会分为两部分:通信协议和域名地址。

 域名地址都很好理解,不同的域名地址表示网站中不同的页面,而通信协议,简单来说就是浏览器和服务器之间沟通的语言。网站中的通信协议一般就是HTTP协议和HTTPS协议。

 

 一.接下来简单说一下这俩种协议概念:

  ①HTTP协议

    http超文本传输协议,是一个客户端和服务端请求和应答的标准,用于WWW服务器传输超文本到本地浏览器的传输协议,可以使浏览器更加高效,减少网络传输。一直以来HTTP协议都是最主流的网页协议,但是互联网发展到今天,HTTP协议的明文传输会让用户存在一个非常大的安全隐患。试想一下,假如你在一个HTTP协议的网站上面购物,你需要在页面上输入你的银行卡号和密码,然后你把数据提交到服务器实现购买。假如这个适合,你的传输数据被第三者给截获了,由于HTTP明文数据传输的原因,你的银行卡号和密码,将会被这个截获人所得到。现在你还敢在一个HTTP的网站上面购物吗?你还会在一个HTTP的网站上面留下你的个人信息吗?

    图解:三个角色: 小明:Client端       小明女朋友:Service端        小明母亲:黑客

    只用Http的话,小明的骚话相当于“裸奔”状态,可能刚发出去就被他妈就看见了

      

  ②HTTPS协议(HTTP + 加密 + 认证 + 完整性保护 = HTTPS)

    HTTPS协议可以理解为HTTP协议的升级,就是在HTTP的基础上增加了数据加密。在数据进行传输之前,对数据进行加密,然后再发送到服务器。这样,就算数据被第三者所截获,但是由于数据是加密的,所以你的个人信息让然是安全的。这就是HTTP和HTTPS的最大区别。

    图解:三个角色: 小明:Client端       小明女朋友:Service端        小明母亲:黑客

    用HTTPS的话,小明的骚话处于“加密”状态,这样他妈就看不见了。

    

 

    其实如果闲的没事可以发现,你会发现现在很多大型互联网网站,如百度、淘宝、腾讯很早就已经把HTTP换成HTTPS了。我们经常用谷歌浏览器会发现,如果是HTTPS协议的网站在地址栏里边会有一把锁,而HTTP协议的网站会提示不安全。

                

 

                      

  二.HTTPS比HTTP多的这个S到底是什么?

    HTTPS协议的主要功能基本都依赖于TLS/SSL协议,而TLS/SSL协议是介于TCP和HTTP之间的一层安全协议,不影响原有的TCP协议和HTTP协议,所以使用HTTPS基本上不需要对HTTP页面进行太多的改造。那么我们可以把SSL/TLS当作一个黑盒子,就像TCP、HTTP,我们知道数据先丢给HTTP,HTTP丢给SSL/TLS加密,然后SSL/TLS丢给TCP传输...诸如此类。

    SSL是TLS的前身,SSL从1.0、2.0到3.0一步步修订,但安全性都不是非常完美。知道后来SSL3.0摇身一变变成TLS1.0,发展至今已经达到TLS1.3的稳定版本.

  三.HTTP与HTTPS的优缺点以及区别

     1、区别:  

      ①https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

      ②http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

      ③http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

      ④http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全

     2、HTTPS优缺点:

      尽管HTTPS并非绝对安全,掌握根证书的机构、掌握加密算法的组织同样可以进行中间人形式的攻击,但HTTPS仍是现行架构下最安全的解决方案,主要有以下几个好处:

      ①使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器;

      ②HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全可防止数据在传输过程中不被窃取、改变,确保数据的完整性。

      ③HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。

      ⑤谷歌曾在2014年8月份调整搜索引擎算法,并称“比起同等HTTP网站,采用HTTPS加密的网站在搜索结果中的排名将会更高”。

      虽然说HTTPS有很大的优势,但其相对来说,还是存在不足之处的:

      ①HTTPS协议握手阶段比较费时,会使页面的加载时间延长近50%,增加10%到20%的耗电;

      ②HTTPS连接缓存不如HTTP高效,会增加数据开销和功耗,甚至已有的安全措施也会因此而受到影响;

      ③SSL证书需要钱,功能越强大的证书费用越高,个人网站、小网站没有必要一般不会用。

        ④SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗。

        ⑤HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

 

posted on 2020-05-16 12:06  前端幼儿园_影啊翔  阅读(231)  评论(0编辑  收藏  举报