了解SSL最新动态及行业资讯
1.HTTP是什么
那么在介绍https之前,有必要先解释下http。http是一个非常简单又非常复杂的协议,说其简单,是我们每 天都在用它,而且又浑然不觉,貌似很简单的样子。但是真正能够把http完全了解清楚,并不是很容易的事情, 简单来说,HTTP协议是超文本传输协议,是一种可靠的数据传输协议。
像我们每天都在使用的web浏览器就是一种 http客户端,提供内容的web服务器就是服务器端。http客户端和服务器端构成了万维网的基本组件。web服务器是web资源的宿主,web资源是 web内容的源头,最简单的web资源就是web服务器文件系统中的静态文件,如文本文件,html文件,图片,word文件以及mp3,avi等影音文 件等;除了静态文件,web资源还可能是根据需要生产内容的软件程序,这些可以看做是动态文件。
一个简单的 http请求是从我们打开浏览器,输入url地址访问指定网站开始的。一条请求命令和一个响应结果构成了一个HTTP事务。而几乎世界上所有的HTTP通 信都是由TCP/IP协议承载的,这就是我们熟悉的网络ISO七层结构和TCP/IP4层结构,在大部分的情况我们只讨论TCP/IP分层结构。
那么具体 的访问过程是怎么样的呢?比如我们访问 https://www.mianfeissl.com 这个链接地址,那么具体包括如下几个过程:
1.浏览器解析初主机名。
2.浏览器查询DNS服务器查到该主机名对应的ip地址。比如198.198.198.198。如果之前有访问过该站点,则由于DNS记录会被操作系统缓存,就不需要再次解析。此外,如果访问的web服务器使用了DNS轮转的话,则可能不同的时候查到的ip地址是不同的。 3.浏览器获得端口号。这里默认是80.
4.浏览器发起到198.198.198.198端口80的连接。
5.浏览器向服务器发起一条HTTP GET的报文。
6.浏览器从服务器读取一条HTTP响应报文。
7.浏览器关闭连接。
2.从HTTP到HTTPS
基本的HTTP在web事务中是不够安全的,这也就催生了HTTPS的诞生。HTTPS是在HTTP和TCP之间加 了一层传输层的密码安全层-SSL或者后来普遍使用的TLS。HTTPS协议会对web通信过程中的数据加密,杜绝了数据被窃取,总体来说还是很安全的。HTTPS在URL中的前缀是HTTPS,默认端口是 443,HTTP默认端口80。
2.1基本过程
由于SSL安全层的存在,HTTPS建立安全传输的过程会略微复杂一些。HTTP客户端(最常用的就是浏览器了)打 开一条到web服务器端口443的连接。一旦建立了TCP连接,客户端和服务器端就会初始化SSL层,对加密参数进行沟通并交换密钥。握手完成后,SSL 也就初始化完成了,客户端就可以把请求报文发送给安全层了。当然,这些报文发送给TCP之前,会被加密。
2.2 SSL握手
这个知识点在上篇文章中我们已经说到了,如果还不了解的朋友可以去看看
上一篇:SSL握手工作原理详解