类型 | 长度 | 内容 |
---|---|---|
1字节 | 3字节 | ≥0字节 |
表示10种消息中的一种。所有类型如下:
hello_request | 空 |
---|---|
client_hello | 建立初始的逻辑连接 |
server_hello | 同上 |
certificate | 一系列证书 |
certificate_request | 请求证书 |
certificate_verify | 证书验证 |
server_key_change | 服务器秘钥交换 |
client_key_change | 客户端秘钥交换 |
server_done | 消息结束,等待回复 |
finished | 密码已经变更完成 |
消息长度(字节)。
由客户端发起,建立初始的逻辑连接,并为后面的阶段交换所需参数。
client hello消息内容:
server hello消息:
版本号:决定使用的版本号。
随机数:服务器生成的随机数(也同时生成了时间戳)。
会话标识:
若客户端发的是0值:则服务器生成一个新连接,发回新ID。
若客户端是非0值:则服务器发送同样的数值。
密码组:决定使用的密码组。
压缩方法:决定使用的压缩方法。
密码组详情
- 交换密钥的方法
① RSA 非对称加密
② 固定DH
③ 瞬时DH
④ 匿名DH- cipher spec 密码说明
① 密码算法(任何算法,如RC4,DES3,IDEA等)
② MAC算法(MD5,SHA-1)
③ 密码类型(流 / 块)
④ 可否出口(可 / 不可)???
⑤ 散列长度(0 / 16(MD5) / 20(SHA-1))
⑥ 密钥材料???
⑦ IV大小(CBC分组的初始向量大小)
.
.
服务器承接阶段1,继续发送消息,可能发送 对自己身份的认证,密钥参数(哪个密钥?)和请求客户端表明身份等等。
certificate 消息:
server_key_change 消息:
certificate request消息:
server done 消息:
表明服务器hello结束,等待客户端应答。
无参数
.
.
在收到server done后,客户端检验服务器的证书合不合法,再检验server hello的参数能否接受。一切无误之后,开始向服务器发送消息。
certificate 消息:
client key change 消息:
certificate verify 消息:
.
.
change cipher spce 消息(不属于握手协议):
client finished 消息:
change cipher spce 消息(不属于握手协议):
server finished 消息:
.
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2018 群英 版权所有 茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号-36 粤公网安备 44090202000006号 粤工商备P091701000595