一 基本概念
HTTP:(Hyper Text Transfer Protocol)超文本传送协议,定义了浏览器怎样向服务器请求文档,以及服务器怎样把文档传送给浏览器,是面向事物的应用层协议,简单来讲就是一个传输数据协议
HTTPS:(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure,超文本传输安全协议),是以安全为目标的HTTP通道。HTTPS是HTTP下加入了SSL层,使得客户端和服务器之间的数据得以加密传输,显然SSL是HTTPS 的安全基础,HTTPS将SSL层作为HTTP的应用层子层(HTTPS使用443端口,而HTTP则使用80端口就行TCP/IP通信)
二 两者区别
HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如银行卡号、密码等。
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
主要区别
1,HTTPS 协议需要ca证书(电子商务认证授权机构)可以用于辨明网站是否真实可信(凡是使用了 https 的网站,都可以通过点击浏览器地址栏的锁头标志来查看网站认证之后的真实信息,也可以通过 CA 机构颁发的安全签章来查询)。
2,HTTP协议是明文传输,信息容易被窃取,HTTPS用于需要加密的数据传输。
3,HTTP协议是无状态的,即服务器不记得曾经访问过这个客户。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的协议,比http协议安全。
4,传输端口不一样,HTTPS是443端口,HTTP是80端口
三 HTTP和HTTPS的工作方式示意图
HTTP:
HTTPS:
(图源网络)
四 HTTP和HTTPS的访问速度对比
查看两者的区别可以查看大神的博客写的比较全