HTTP与HTTPS的区别


在这里插入图片描述


HTTP: 超文本传输协议 (HyperText Transfer Protocol)
HTTPS:安全套接字层超文本传输协议 (Hyper Text Transfer Protocol over Secure Socket Layer)


1. 从HTTP协议中衍生出的HTTPS协议

超文本传输协议HTTP协议被用于在Web浏览器和**网站服务器**之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

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

2. 基本概念

  1. HTTP:超文本传输协议(HyperText Transfer Protocol)。是互联网上应用最为广泛的一种网络协议,所有的www文件都必须遵守这个标准。是一个客户端和服务器端请求和应答的标准(TCP),用于从www服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。

  2. HTTPS:安全套接字层超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer)。以安全为目标的HTTP通道,简单讲是HTTP的安全版本,即HTTP下加入SSL(Secure Sockets Layer 安全套接层)层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁,也就是说它的主要作用可以分为两种:

(1)建立一个信息安全的通道,来保证数据传输的安全;
(2)确认网站的真实性。

3. 具体区别

HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据加密传输,网景公司设计了SSL(Sercure Socket Layer)协议用于对HTTP协议传输的数据进行加密,从而诞生了HTTPS。具体的区别如下:

1、HTTPS更安全:HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比HTTP协议的信息明文传输安全;


2、HTTPS需要申请证书:HTTPS协议需要到CA申请证书,一般免费证书很少,需要交费,费用大概与.com域名差不多,每年需要大约几十元的费用。而常见的HTTP协议则没有这一项;


3、端口不同:HTTP使用的是大家最常见的80端口,而HTTPS连接使用的是443端口;


4、状态不同:HTTP的连接很简单,是无状态的。而HTTPS协议是SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比HTTP协议安全;

4. HTTPS具体工作

HTTPS连接时,服务器要求有公钥和签名的证书。使用HTTPS连接,服务器响应初始连接,并提供它所支持的加密方法,作为回应,客户端选择一个连接方法,并且客户端和服务器端交换证书验证彼此身份,完成后在确保使用相同密钥的情况下传输加密信息,然后关闭连接,为了提供HTTPS连接支持,服务器必须有一个公钥证书,该证书包含经过证书机构认证的密钥信息,大部分证书都是通过第三方机构授权的以保证证书是安全的。

HTTPS跟HTTP一样,只不过增加了SSL。

1、HTTP包含如下动作:

(1)浏览器打开一个TCP连接

(2)浏览器发送HTTP请求到服务器端

(3)服务器发送HTTP回应信息到浏览器

(4)TCP连接关闭

2、SSL包含如下动作:

(1)验证服务器端;

(2)允许客户端和服务器端选择加密算法和密码,确保双方都支持

(3)验证客户端(可选)

(4)使用公钥加密技术来生成共享加密数据

(5)创建一个加密的SSL连接

(6)基于该SSL连接传递HTTP请求

参考
1、https://blog.csdn.net/u012050154/article/details/52045511
2、http://www.runoob.com/w3cnote/http-vs-https.html

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述
♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠ ⊕ ♠

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 猿与汪的秘密 设计师:白松林 返回首页