一.TSL/SSL握手的目的
- 身份验证:可以通过证书进行对身份进行验证
- 算法协商:通讯双方可以通过算法的协商出双方都支持的算法
- 秘钥协商:主要的密钥协商算法有两种RSA,、DH,我们使用的非对称加密的方式,目的是协商一个对称加密的秘钥,用于数据传输过程中
二.TSL/SSL的Record报头
1、类型Type:占一个字节,主要有一下类型Handshake(0x16)、Change Cipher Spec(0x14)、Alert(0x15)、Application Data (0x17)、Hello Request(0x00)、Client Hello(0x01)、Server Hello(0x02)、Certificate(0x0B)、Server Key Exchange(0x0C)、Certificate Request(0x0D)、Server Hello Done(0x0E)、Certificate Verify (0x0F)、Client Key Exchange(0x10)、Finished(0x14)
2、版本Version:占两个字节,有三个版本SSLv3(0x0300)、TLS1.0(0x0301)、TLS1.1(0x0302)、TLS1.2(0x0303)
PS:
- TLS/SSL握手过程是建立在TCP之上,先进行TCP握手,再进行SSL/TLS握手
- TLS/SSL握手过程中的传