目录
基本概念:
HTTP:超文本传输协议 HTTP。是网络应用层的协议。HTTP是数据通信的基础。设计HTTP是为了提供一种发布和接收HTML页面的方法。规定了浏览器端和服务器端请求响应的规则和格式。是应用层的传输控制协议(TCP)。通过HTTP或HTTPS协议请求的资源由统一资源标识符(URL)来标识。
HTTPS:以安全为目标的HTTP通道,即HTTP下加入SSL层进行加密。目的是建立一个安全的通道,来确保数据的传输,确保网站的真实性
区别:
1、信息传输方式:明文传输,加密传输
HTTP是超文本传输协议,信息是明文传输,HTTPS 协议要比 HTTP 安全,HTTPS是安全性的SSL(Secure Sockets Layer安全套接字协议)加密传输协议,防止数据在传输过程被盗取、改变,确保数据的完整。
2、端口号:HTTP80 HTTPS443
HTTP协议的默认端口号是80,HTTPS的默认端口号是443
3、页面加载时间不同
http的连接很简单,是无状态的。HTTPS握手阶段需要进行加密,比较费时,会使页面加载时间延长50%,
4、HTTPS需要证书
https需要CA证书,费用较高,功能越强大,证书费用越高
三、HTTP与HTTPS的工作原理
HTTP的工作原理
一次HTTP操作称为一个事务,其工作过程可分为四步:
1、 首先,客户机与服务器需要建立连接,只要单击某个超链接,http工作即开始.
2、 建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号.后面是MIME(文本类型,声明是视频还是音频等)信息,包括后面是MIME信息,包括请求修饰符、客户机信息和可能的内容.
3、 服务器接到请求后,返回响应的响应信息,其格式为一个状态行,包括协议的版本号、一个成功或失败的错误代码.后面是MIME信息,包括服务器信息、实体信息和可能的内容.
4、客户端接收服务器所返回的信息并通过浏览器显示在用户的显示屏上,最后客户机与服务器断开连接.
如果以上过程中的某一步出现错误,那么产生的错误信息将返回到客户端的浏览器并在显示屏输出.对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了.
HTTPS的工作原理
我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取.
所以很多银行网站或电子邮箱等安全级别较高的服务都会采用HTTPS协议.
客户端使用HTTPS协议与Web服务器通信时,会经历以下几个步骤:
1、客户端使用https的url访问Web服务器,要求与Web服务器建立SSL连接.
2、Web服务器收到客户端请求后,会将网站的证书信息(证书中包含公钥)传送一份给客户端.
3、客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级.
4、客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站.
5、Web服务器利用自己的私钥解密出会话密钥.
6、Web服务器利用会话密钥加密与客户端之间的通信.