SSL/TLS Handshake 握手 连接

来源:互联网 发布:stc单片机isp原理 编辑:程序博客网 时间:2024/05/16 12:22

总结所理解的SSL/TLS的RCA算法的握手过程。
更进一步的了解可以参考阮总的文章。

握手过程

tls handshake

Client Hello

Client向服务器发送Hello信息。此信息包含:

  1. SSL/TLS协议版本号
  2. Client生成的随机数(Client Random)
  3. Client支持的加密方法(Cipher suites supported)

Server Hello

  1. 确认双方使用的加密方法
  2. Server数字证书(Certificate)
  3. Server的公钥(Server Public Key)
  4. Server生成的随机数(Server Random)
  5. Session ID

Client 返回随机数

  1. Client确认Server的数字证书有效性
  2. Client生成的随机数(Premaster Secret)
  3. 用Server的公钥加密随机数(Encrypts premaster secret with public key)

Server 使用秘钥

  1. 用Server的私钥解密随机数(Premaster Secret)

生成会话秘钥

  1. Client Random
  2. Server Random
  3. Premaster Secret

双方用三个随机数生成会话秘钥(Session Key),即对称加密秘钥。
此后所有的对话都使用此秘钥加密对话。

handshake

参考

阮总的文章:
http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html

阅读全文
0 0
原创粉丝点击