随笔 - 6  文章 - 0 评论 - 0 阅读 - 294
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

TLS的四次握手

由于HTTP是明文传输,因此需要加密,于是采用TLSRSA握手去实现加密传输。所以流程变为先通过TCP的三次握手加上TLS的四次握手建立连接。

第一次握手

客户端发送client hello,内容包括TLS版本号,随机数,可用于加密的协议。

第二次握手

服务器接收到客户端的消息,发送给客户端TLS版本号,随机数,选择的协议,数字证书。这样完成了两个随机数的交换。数字证书是用于验证服务端的身份。

数字证书验证的方法是通过CACA获取数字证书后,对其进行哈希,然后将哈希值通过私钥加密公钥解密和原先的哈希值对比,如果相同则说明认证成功。

第三次握手

客户端验证完之后,再生成一个随机数,通过服务端的RSA加密,通过Client Key Exchange传给服务端,然后服务端通过RSA私钥解密,于是双方都获得了三个随机数,生成密钥。再发送一个Change Cipher Spec的消息,告诉服务端开始使用加密传输。

第四次握手

同样的,服务器也进行第三次握手的操作,开始加密传输。

posted on   lgats324  阅读(207)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示