SSL 工作原理详解
SSL 的工作原理:当一个使用者在 Web 上用 Netscape 浏览器漫游时,浏览器利用
HTTP 协议与 Web 服务器沟通。例如,浏览器发出一个 HTTP GET 命令给服务器,想下
载一个首页的 HTML 档案,而服务器会将档案的内容传送给浏览器来响应。 GET 这个命令
的文字和 HTML 档案的文字会通过会话层 (Socket )的连接来传送, Socket 使两台远程的
计算机能利用 Internet 来通话。通过 SSL ,资料在传送出去之前就自动被加密了,它会在
接收端被解密。对没有解密钥的人来说,其中的资料是无法阅读的。
SSL 采用 TCP 作为传输协议提供数据的可靠传送和接收。 SSL 工作在 Socket 层上,
因此独立于更高层应用,可为更高层协议,如 Telnet 、FTP 和 HTTP 提供安全业务。 SSL
提供的安全业务和 TCP 层一样,采用了公开密钥和私人密钥两种加密体制对 Web 服务器
和客户机(选项)的通信提供保密性、数据完整性和认证。在建立连接过程中采用公开密
钥,在会话过程中使用私人密钥。加密的类型和强度则在两端之间建立连接的过程中判断
决定。在所有情况下,服务器通过以下方法向客户机证实自身:给出包含公开密钥的、可
验证的证明;演示它能对用此公开密钥加密的报文进行解密。
为了支持客户机,每个客户机都要拥有一对密钥,这要求在 Internet 上通过 Netscape
分配。由于 Internet 中的服务器数远少于客户机数,因此能否处理签字及密钥管理的业务
量是很重要的,并且与客户联系比给商家以同样保证更重要。
SSL 协议提供的服务可以归纳为如下 3 个方面。
(1)用户和服务器的合法性认证
使得用户和服务器能够确信数据将被发送到正确的客户机和服务器上。客户机和服务
器都有各自的识别号,由公开密钥编排。为了验证用户,安全套接层协议要求在握手交换
数据中做数字认证,以此来确保用户的合法性。
(2)加密数据以隐藏被传送的数据
安全套接层协议采用的加密技术既有对称密钥,也有公开密钥。具体来说,就是客户
机与服务器交换数据之前,先交换 SSL 初始握手信息。在 SSL 握手信息中采用了各种加
密技术,以保证其机密性和数据的完整性,并且经数字证书鉴别,这样就可以防止非法用
户破译。
(3)维护数据的完整性
安全套接层协议采用密码杂凑函数和机密共享的方法,提供完整信息性的服务,来建
立客户机与服务器之间的安全通道,使所有经过安全套接层协议处理的业务,在传输过程
中都能完整、准确无误地到达目的地。