HTTPS简析

HTTPS是最流行的HTTP安全形式,最常见的HTTP安全版本。

HTTPS就是在安全的传输层上发送HTTP。现在HTTP安全层是通过SSL及其现代替代协议TLS来实现的。

HTTPS的网络协议栈是在HTTP网络协议栈的TCP(传输层)之上多了一个SSL or  TLS(安全层)。

HTTPS通讯过程:

1.客户端打开一条到Web服务器端口443的TCP连接(443是安全HTTP的端口)。

2.SSL握手:交换协议版本,对SSL加密参数进行沟通并选择一个两端都了解的密码,各自生成临时的会话密钥以便加密信道,交换公钥。握手的具体流程如下:

(1)客户端发送可供选择的密码并请求证书。

(2)服务端发送选中的密码和证书。

(3)客户端发送保密信息,客户端和服务端生成密钥。

(4)客户端和服务端交换公钥,开始加密会话过程。

3.进行安全的请求响应:客户端在将请求报文发送给SSL(安全层),然后在TCP上发送已加密的请求;服务端在SSL上发送HTTP响应,在TCP上发送已加密的响应。

4.SSL关闭通知,TCP连接关闭。


参考文献:

[美] David Gourley,[美] Brian Totty,[美] Marjorie Sayer,[美] Sailu Reddy,[美] Anshu Aggarwal.HTTP权威指南〔M〕.陈涓、赵振平译.北京:人民邮电出版社,2012.9

你可能感兴趣的:(HTTPS简析)