Https和Http的区别

1.HTTP和Https简介

1.1 Http协议(超文本传输协议:Hypertext transfer protocol),规定了浏览器和万维网服务器之间相互通信的规则,通过因特网传输进行数据传输的协议;Https协议(基于安全套接字层的超文本传输协议:HTTP over SSL),是netscape开发的web协议。简单的说:

HTTPs = HTTP + SSL;

1.2 Http是作为TCP/IP模型的应用层协议,是基于Tcp协议的,Https不仅基于tcp协议同时还基于TLS或SSL协议。

1.3 两者都是应用层协议,由请求和响应构成面试一个标准的客户端服务器模型

1.4 Http默认的端口号是80, https默认的端口号是443

1.5 Http不需要证书,而Http需要认证证书

1.6 Http不需要加密,而Https对传输的数据进行了加密

1.7Http是不安全的,而Https是安全的

1.8 在OSI网络模型中,Http工作在应用层,而Https工作在传输层

2.Http和Https的相同点

大多数情况下,Http和Https是相同的,都是采用了同一个基础的协议,作为Http或者Https客户端-浏览器设立了一个链接到web服务器的接口,当服务器接收到请求,它会返回一个状态码以及信息,这个会有回应可能是请求信息,或者指示某个错误发送的错误信息。系统使用统一资源定位器URL模式,因此资源可以被唯一指定。而Http和Https唯一的不同在于只是一个协议头的说明。其他的都是一样的。

3为什么需要https

http是一种通过互联网传输和接受信息的协议,http使用请求/响应的过程中,信息可以在服务器间快速准确的传输。但是用户在使用web访问网页时,由于http未添加任何安全措施,可能会被窃取用户的敏感信息,因此,为了保护用户的敏感信息,网景公司(netscape)推出了HTTPS。

4Https的工作原理

使用Https链接时,服务器需要有公钥和带有签名的证书。

Http包含如下动作

1.浏览器打开一个TCP链接

2.浏览器发送Http请求到服务器端

3.服务器端发送Http回应信息给浏览器

4.Tcp链接关闭

SSL包含如下动作

1.验证服务器端

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

3.验证客户端(可选)

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

5.创建一个加密的SSl链接

6.基于该SSL链接传递Http请求。

你可能感兴趣的:(Https和Http的区别)