https建立连接过程
tcp三次握手之后
1. client发送 client hello给服务端 会告诉服务端支持的加密套件和支持的tls版本 生成一个随机数发送给服务端
2. service发送 service hello给客户端 告诉客户端确认支持的tls版本和选择的加密套件 生成一个随机数返回给客户端
3. service在响应返回自己的证书,客户端判断证书是否过期可信等
4. service 响应公钥给客户端 如果服务器要客户端的证书会在这里发出请求
5. service 响应server hello done
以上操作均明文发送响应
6. client生成第三个随机数预主秘钥 使用公钥加密后发送给服务端 client key exchange/change cipher spec 告诉服务端以后就用商议好的秘钥通信了/encrypted handshake message 客户端这边tls协商已经没有问题
7. 服务器发来 encrypted handshake message 代表服务器端tls协商也没有问题了
8. 客户端和服务端使用第一随机数+第二随机数+预主秘钥计算出一个会话秘钥进行对称加密通信
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)