总结所理解的SSL/TLS的RCA算法的握手过程。
更进一步的了解可以参考阮总的文章。
握手过程
Client Hello
Client向服务器发送Hello信息。此信息包含:
- SSL/TLS协议版本号
- Client生成的随机数(Client Random)
- Client支持的加密方法(Cipher suites supported)
Server Hello
- 确认双方使用的加密方法
- Server数字证书(Certificate)
- Server的公钥(Server Public Key)
- Server生成的随机数(Server Random)
- Session ID
Client 返回随机数
- Client确认Server的数字证书有效性
- Client生成的随机数(Premaster Secret)
- 用Server的公钥加密随机数(Encrypts premaster secret with public key)
Server 使用秘钥
- 用Server的私钥解密随机数(Premaster Secret)