SSL握手过程


![hand][1]

SSL 握手目的

  1. 客户端与服务器需要就一组用于保护数据的算法达成一致;
  2. 它们需要确立一组由那些算法所使用的加密密钥;
  3. 握手还可以选择对客户端进行认证(单向/双向 认证)。

SSL 四次握手过程

1、客户端请求建立SSL链接,并向服务端发送一个随机数–Client random和客户端支持的加密方法,比如RSA公钥加密,此时是明文传输。
2、服务端回复一种客户端支持的加密方法、一个随机数–Server random、授信的服务器证书和非对称加密的公钥。
3、客户端收到服务端的回复后利用服务端的公钥,加上新的随机数–Premaster secret 通过服务端下发的公钥及加密方法进行加密,发送给服务器。
4、服务端收到客户端的回复,利用已知的加解密方式进行解密,同时利用Client random、Server random和Premaster secret通过一定的算法生成HTTP链接数据传输的对称加密key – session key

此后通讯基于 sessionkey 对称加密进行

参考:


文章作者: Alex.Lin
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Alex.Lin !
  目录