帮你理解 HTTP 和 HTTPS 的区别

这两天闲来无事,在网上看了一下,发现 HTTP 和 HTTPS 的区别很受关注,多位大牛做了很详细的阐述,非常深刻全面 。但是小编还是发现一个问题,大牛们的描述太过于专业了,对于专业人士来说当然很容易看明白,可是真正需要了解的往往是一些小白,小白们一开始就接触这些专业术语其实是很难理解的 。你们说是不是这个理 。所以小编决定联系实际来聊聊这个话题 。
 
首先我们还是简单的描述一下专业定义 。HTTP 是怎么定义的? HTTPS 又是怎么定义的?
 
HTTP (全称 Hyper Text Transfer Protocol ),一般称为超文本传输协议,也是互联网上应用最为广泛的一种网络协议 。所有的WWW文件都必须遵守这个标准 。设计 HTTP最初的目的是为了提供一种发布和接收html页面的方法 。一种详细规定了浏览器和万维网服务器之间互相通信的规则 。HTTPS (全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是 HTTP 的安全版 。
 
俗话讲:无规矩不成方圆 。只有遵循一定规则通信才能有序正常的进行 。本质上来说 HTTP 和 HTTPS 是相同的,都是一种传输协议,一种通信规则 。只不过 HTTPS 是从 HTTP 的基础上发展而来的,加入了独特的安全机制 。
 
接下来我们联系现实,举个例子为大家描述一下 。
 
就拿打电话来说吧,如果你用自己的手机去给朋友手机拨打电话 。看上去这很简单,可能有人会问,这打电话还能有规则?怎么没有呢,我们简单看一下打电话的过程,拨号码》接通电话》交流》结束挂电话 。这不正是打电话的一套规则吗 。
 
前面我们说过了,HTTP 规定了浏览器和万维网服务器之间互相通信的规则,比如我们通过浏览器去浏览一个网页,第一步是打开浏览器,浏览器好比是你的手机,在浏览器输入 URL 地址,进行请求,实际上我们输入 URL 后,我们的浏览器给 Web 服务器发送了一个 Request , Web 服务器接到 Request 后进行处理,生成相应的Response ,然后发送给浏览器,浏览器解析 Response 中的 HTML ,这样我们就看到了网页,这里的URL就相当于你打电话时输入朋友的手机号码,而朋友手机可以看作是你访问的服务器 。而 Request 和 Response 大致可以看作是你和朋友的通话内容吧 。有些时候访问网页会出现提示找不到服务器等现象,这就说明对方服务器出了问题,也许是关闭了,也许是故障了 。这又可以看作是拨打朋友电话,结果朋友手机关机或者损坏,自然无法接通 。最后我们关闭浏览器结束访问也就好比通话结束,挂掉电话一样 。
 
我们再看 HTTPS 规则,HTTPS 是运行在 SSL/TLS 之上的HTTP协议,SSL/TLS 运行在 TCP 之上 。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密 。如果同样用打电话来理解,可以看作是你和朋友通电话的内容进行了加密处理,中国电信有一项特别定制的加密通信业务,内置国家密码管理局指配加密算法的手机终端,向客户提供实现商密级的端到端手机话音通信加密功能、手机终端信息保护以及手机终端加密信息的远程擦除等安全服务 。而 HTTPS 协议使用的对称加密就好比是加密电话中添加的加密算法 。可以防止被窃取和监听 。
 
我们有必要解释一下 HTTPS 的证书,采用 HTTPS 协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请,区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面 。这套证书其实就是一对公钥和私钥,如果对公钥和私钥不太理解,可以想象成一把钥匙和一把锁,这把锁只有你一个人有这把钥匙,你可以把锁给别人,别人可以用这个锁把重要的东西锁起来,然后发给你,因为只有你一个人有这把钥匙,所以只有你才能看到被这把锁锁起来的东西 。
 
证书类别可以分为以下:按证书认证等级分类有 DV SSL 证书、 IV SSL 证书、 OV SSL 证书、 EV SSL 证书 。按适用域名数量分类有通配符型 SSL 证书、万能型 SSL 证书、单域名 SSL 证书、多域名 SSL 证书 。按照签发主体分类有:自签名 SSL 证书和 CA 机构签发 SSL 证书(各类证书的区别和申请方法因篇幅有限这里就不详细描述了 。)
 
最后我们通过前面的讲述具体来概括一下 HTTP 和 HTTPS 的区别
 
1、HTTP 的 URL 以 HTTP:// 开头,而 HTTPS 的 URL 以 HTTPs:// 开头;


推荐阅读