一、http与https的基本概念
1.1 http协议
http是互联网上应用最为广泛的一种网络协议,是一个客户端和服务端请求和应答的标准(TCP),用于从www服务器传输超文本到本地浏览器的传输协议,可以使浏览器更加高效,使网络传输减少。
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种协议。所有的www文件都必须遵守这个标准。设计http最初的目的是为了提供一种发布和接收html页面的方法。
HTTP协议一般用于B/S架构,浏览器作为客户端通过URL向HTTP服务端即web服务器发送所有请求。
1.2 https协议
https(HyperText Transfer Protocol over Secure Socket Layer):是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP+SSL/TLS,HTTPS的安全基础是SSL,因此,加密的详细内容就需要SSL。
SSL(Secure Socket Layer,安全套接字层):1994年为Netscape所研发,SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。
TLS(Transport Layer Security,传输层安全):其前身是 SSL,它最初的几个版本(SSL 1.0、SSL 2.0、SSL 3.0)由网景公司开发,1999年从 3.1 开始被 IETF 标准化并改名,发展至今已经有 TLS 1.0、TLS 1.1、TLS 1.2 三个版本。SSL3.0和TLS1.0由于存在安全漏洞,已经很少被使用到。TLS 1.3 改动会比较大,目前还在草案阶段,目前使用最广泛的是TLS 1.1、TLS 1.2。
1.3http与https的区别
简单来说,https协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。主要区别如下:
- https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
- http是超文本传输协议,信息是明文传输,https则是具有安全性的SSL加密传输协议。
- 两者是不同的连接方式,用的默认端口也不一样,http是80,https是443.。
- http的连接很简单,是无状态的;https协议是由ssl+http构建的可进行加密传输、身份认证的网络协议,比http要安全。