TLS握手阶段
2020-01-16 22:07:46 0 举报
TLS的握手过程
作者其他创作
大纲/内容
① Client Hello - 支持的协议版本 eg.TLS 1.0 - 一个客户端随机生成的随机数 Num1 - 支持的加密算法,压缩算法...
④ 服务器最后的回应- 编码改变通知,表示随后的信息都用双方协定的加 密方法加密发送。注意,key无需发送给客户段, 客户端会自己算出这个key值- 服务器握手结束通知,表示服务器握手阶段及结束 这一项同时也是前面发送的所有内容的hash值(hash2)
服务端
计算出 key 作为双发协商好的加密方法和密钥font color=\"#cc0000\
② Server Hello- 确认使用的加密通信协议的版本, 譬如 TLS 1.0。如果浏览器与服务器支持的版 本不一致,关闭通信- 一个随机数 Num2- 确认使用的加密算法,如isa- 服务器CA证书
1. 验证hash2的正确性2. hash2验证通过后,计算出key的值 font color=\"#cc0000\
服务器验证hash1的正确性
验证CA证书,从证书中取出公钥
③ 客户端回应- 用公钥加密的PreMaster Secret- 编码通知改变,表示随后的信息都将用双方商 定的加密方式加密发送- 客户端握手结束通知,表示客户端握手的阶段已 经结束。这一项也是前面发送的所有内容的hash 值(hash1),用于提供服务器验证
整个握手过程都是不加密的(也是没法加密的),都是明文的。因此如果有人窃听通信,他可以知道双方的加密方式,以及三个随机数中的前两个,整个通信的安全,只取决于第三个随机值( premaster secret )能不能被破解
用加密算法产生一个48个字节的随机数,PreMaster Secret
客户端
0 条评论
下一页