SSL证书和浏览器到Web服务器的连接

时间:2012-12-17 14:27:10

标签: ssl https

我确信这已嵌入SSL证书/ HTTPS规范的详细信息中,但我并不完全了解此主题。

如果现代浏览器连接到HTTPS站点,则HTTP请求的主体将被加密。 SSL证书本质上是用于在客户端和服务器之间来回通信的“公共”密钥吗?

黑客无法从公共网站获取公钥,说“https://www.google.com”并监控客户端/服务器流量并解密数据?

此外,客户是否需要验证证书的“颁发者”。例如,自签名证书客户端不需要验证,但对于受信任颁发者提供的证书,证书验证过程中会发生什么?

1 个答案:

答案 0 :(得分:1)

服务器的证书包含一个公钥,实际上每个人都可以看到它。反过来,在服务器和客户端之间的握手期间使用此密钥,以便创建将用于加密任何其他消息的唯一会话密钥:

http://en.wikipedia.org/wiki/Secure_Sockets_Layer#TLS_handshake_in_detail

  

黑客不能从公共网站获取公钥,比如说   “https://www.google.com”并监控客户端/服务器流量并解密   数据?

黑客不会知道会话密钥。他会听(无意义的)加密的东西。

  

此外,客户是否需要验证证书的“颁发者”。对于   例如,自签名证书客户端不需要验证但是   从受信任的发行人提供的证书,在此期间发生的事情   证书验证过程?

如您所说,证书的颁发者是根据预先定义的受信任机构列表进行验证的。将验证链中的任何证书,包括受信任的颁发者,到期日期。此外,每个证书都包含指向证书吊销列表(CRL分发点)的URL,客户端将尝试从此类URL下载列表,并确保手头的证书尚未被撤销。