HTTP和HTTPS的区别

HTTP和HTTPS在表面上看仅有一个单词的区别,那么两者在背后到底有着什么样的区别和联系呢,下面一一解析。

1. 什么是HTTP协议

    HTTP(超文本传输协议)被用于在Web浏览器和网站服务器之间传递信息,完成通信的功能。简言之就是网络链接在传输文本信息中的一种规定的协议。

    1.1 HTTP协议的缺点

          1.1.1 HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接获取其中的报文信息

           1.1.2 不验证通信方的身份, 因此有可能遭遇伪装,在不确定通信方的身份的情况下,进行报文的发送传输

           1.1.3  无法证明报文的完整性, 所有有可能已遭篡改 ,在不确定Http报文的安全完整性的情况下,进行报文的处理

因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付以及个人敏感信息。

为了解决HTTP协议对于信息不安全的缺陷,需要使用另一种协议:HTTPS(安全套接字层超文本传输协议),为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

  1.2 与http关系密切的协议: IP, TCP和DNS

         1.2.1  负责传输的IP协议

IP协议数据网络层, IP协议的作用是把各类数据包传送给对方. 而要确保确实传送到对方那里, 则需要满足各类条件. 其中两个重要的条件是IP地址和MAC地址.

IP地址指明了节点被分配到的地址, MAC地址是指网卡所指的固定地址. IP地址和MAC地址进行配对, IP地址可以变换, 但是MAC地址基本不会更改.

         1.2.2 确保可靠性的TCP协议

TCP位于传输层, 提供可靠的字节流服务

字节流服务: 为了方便传输, 将大块数据分割成以报文段为单位的数据包进行管理.
为了确保无误将数据送达目标处, TCP协议采用了三次握手策略.当然除了三次握手策略, 还有很多其他的手段保证通讯的可靠性

         1.2.3 负责域名解析的DNS服务

DNS服务是和HTTP协议一样位于应用层的协议. 他提供域名与IP地址之间的解析服务.

2. 什么是HTTPS协议

     HTTPS的全称是Secure Hypertext Transfer Protocol(安全超文本传输协议),是在http协议基础上增加了使用SSL加密传送信息的协议。https就是http和TCP之间有一层SSL层,这一层的实际作用是防止钓鱼和加密。

SSL并非是应用层的一种新协议. 只是HTTP通信接口部分用SSL(Secure Socket Layer)和TLS (Transport Layer Security) 协议替代了。

通常, HTTP直接和TCP通信, 当使用SSL时, 演变成了先和SSL通信, 再由SSL和TCP通信了, 简而言之, 所谓HTTPS, 其实就是身披SSL协议的这层外壳的HTTP。

在采用SSL后, HTTP就拥有了HTTPS的加密, 证书和完整性的保护这些功能。

SSL是独立于HTTP的协议, 所有不光是HTTP协议, 其他运行在应用层的SMTP(邮件协议)和Telnet等协议均可配合SSL协议使用.。可以说SSL是当今世界上应用最广泛的网络安全技术。

3. 两者的区别

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

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

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

3.4 http的连接很简单,是无状态的。

3.5 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

4. HTTPS协议的缺点

我们知道万事都不是绝对完美的,既然HTTPS协议有这么大的有点,那么它肯定也有一定的缺点。

其中的一个原因是, 因为与纯文本通信相比, 加密通信会消耗更多的CPU资源以及内存资源, 如果每次通信都加密, 会消耗相当多的资源, 平摊到一台计算机上时, 能够处理的请求数量必定会随之减少。

因此, 如果是非敏感信息则使用HTTP通信, 只有在包括个人信息等敏感数据时, 才利用HTTPS加密通信, 以节省资源. 除此之外, 想要节约购买证书的开销也原因之一。

    

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值