https使用SSL或TLS来保证网络层传输的安全。
SSL目前的版本是3.0。 TLS是在SSL的基础上演化而来的。
一般浏览器同时支持这两种方式。如
IE 工具-Internet选项-高级-设置-安全 使用SSL3.0 使用TLS1.0
FireFox 工具-选项-高级-加密 默认选中SSL3.0和TLS1.0
具体连接过程使用何种加密、消息认证、密钥协商方式,应该是依赖于浏览器或服务器的实现。
在IE浏览器使用SSL3.0时,在浏览器与网站进行密钥协商阶段,只是简单的用服务器证书的公钥加密了主密钥,进行密钥协商。
在这种情况下,如果拿到服务器证书的私钥,就能通过wireshark解析https的通信过程。
参见:http://wiki.wireshark.org/SSL
使用TLS时,很可能是通过DH进行密钥协商。
from Wiki: http://en.wikipedia.org/wiki/HTTP_Secure
Hypertext Transfer Protocol Secure (HTTPS ) is a combination of the Hypertext Transfer Protocol with the SSL/TLS protocol to provide encryption and secure identification of the server.
HTTP operates at the highest layer of the OSI Model , the Application layer; but the security protocol operates at a lower sublayer, encrypting an HTTP message prior to transmission and decrypting a message upon arrival. Strictly speaking, HTTPS is not a separate protocol, but refers to use of ordinary HTTP over an encrypted Secure Sockets Layer (SSL) or Transport Layer Security (TLS) connection.