1元虚拟主机

当前位置:  首页 >  SSL教程 >  SSL握手工作原理详解

SSL握手工作原理详解

来源:景安网络

作者:网络

更新时间:2015-10-13 10:48

景安网络—专业的多线服务器托管商!提供快云服务器,快云VPS,虚拟主机,域名注册,网站空间,服务器托管,服务器租用,SSL证书。1元试用30天vps活动,活动进行中!查看详情

    网络安全愈发受到人们的重视,大家对SSL的熟知程度也上升了一个台阶,在这再啰嗦下,SSL是一个安全协议,那么SSL的工作原理是什么呢?

    SSL在客户端与服务器间传输的数据是通过对称算法进行加密的。公用密钥算法(通常为RSA)是用来获得加密密钥交换和数字签名的,此算法使用服务器的SSL数字证书中的公用密钥。有了服务器的SSL数字证书,客户端也可以验证服务器的身份。

    SSL 握手

    SSL连接是由客户端启动的,在SSL会话开始时执行SSL握手,关于如何处理 SSL 握手的简单概述,如下图所示。(已在 Web 浏览器和 Web服务器间建立了SSL连接)

    SSL握手 

                        图 SSL的客户端与服务器端的认证握手

    (1) 客户端发送列出客户端密码能力的客户端“您好”消息(以客户端项顺序排序),如 SSL 的版本、客户端支持的密码对(加密套件)和客户端支持的数据压缩方法(哈希函数),消息也包含28字节的随机数。

    (2) 服务器以服务器“您好”消息响应,此消息包含密码方法(密码对)和由服务器选择的数据压缩方法,以及会话标识和另一个随机数。 

    注意事项:客户端和服务器至少必须支持一个公共密码对,否则握手失败,服务器一般选择的公共密码对。

    (3) 服务器发送其SSL数字证书。(服务器使用带有 SSL 的 X.509 V3 数字证书) 

    如果服务器使用 SSL V3,而服务器应用程序(如 Web 服务器)需要数字证书进行客户端认证,则客户端会发出“数字证书请求”消息。在 “数字证书请求”消息中,服务器发出支持的客户端数字证书类型的列表和可接受的CA的名称。

    (4) 服务器发出服务器“您好完成”消息并等待客户端响应。

    (5) 一接到服务器“您好完成”消息,客户端( Web 浏览器)将验证服务器的SSL数字证书的有效性并检查服务器的“你好”消息参数是否可以接受。 

    如果服务器请求客户端数字证书,客户端将发送其数字证书;或者没有合适的数字证书可用,客户端将发送“没有数字证书”警告。但如果客户端数字证书认证是强制性的话,服务器应用程序将会使会话失败。

    (6) 客户端发送“客户端密钥交换”消息。此消息包含 pre-master secret (一个用在对称加密密钥生成中的 46 字节的随机数字),和 消息认证代码 ( MAC )密钥(用服务器的公用密钥加密的)。 

    如果客户端发送客户端数字证书给服务器,客户端将发出签有客户端的专用密钥的“数字证书验证”消息。通过验证此消息的签名,服务器可以显示验证客户端数字证书的所有权。 

    注意事项:如果服务器没有属于数字证书的专用密钥,将无法解密 pre-master 密码,也无法创建对称加密算法的正确密钥,且SSL握手失败。

    (7) 客户端使用一系列加密运算将 pre-master secret 转化为 master secret ,其中将派生出所有用于加密和消息认证的密钥。由客户端发出“更改密码规范” 消息将服务器转换为新协商的密码对。客户端发出的下一个消息(“未完成”的消息)为用此密码方法和密钥加密的条消息。

    (8) 服务器以自己的“更改密码规范”和“已完成”消息响应。

    (9) SSL握手结束,且可以发送加密的应用程序数据。

本文链接:http://ssl.zzidc.com/SSLjiaocheng/2015/1013/262.html

关键字:SSL握手

若无特别注明,文章皆为景安网络原创,转载请注明出处。

域名1元

 
返回顶部

联系我们

SSL产品
24小时客服热线:

4006-598-598

0371-9618961