了解HTTPS的三次握手

HTTPS也有三次握手,不同于HTTP的三次握手

第一次握手

客户端将协议版本号、生成一个随机字符串A、客户端支持的加密算法a~d,向服务器发送请求。

第二次握手

服务器收到请求后,将字符串A存储到本地,并从客户端支持的加密算法中选择一个算法c、并给出一个证书、同时也生成一个随机字符串B,响应到客户端。

第三次握手

客户端收到响应后,根据CA机构提供的整数公钥来解密证书中的签名,确定证书的真实有效性,并校验一些其他信息(例如请求的域名是否与证书中一致),所有校验通过后,将从证书中得到的公钥public_key,并新生成一个随机字符串C,并使用证书中的公钥加密形成secret_key值,发送到服务器。

服务器后续

服务器收到加密后的secret_key值后,用自己的私钥进行解密验证,得到字符串C。三次握手至此完成。

后续请求

三次握手成功后,客户端和服务器后续的每次请求,都将使用前三次的随机字符串A、B、C,使用加密算法c,生成一个对称秘钥symmetric_key,来进行加密解密

相关推荐
IT利刃出鞘7 小时前
SSL证书--手动生成自签名IP证书
网络·网络协议·ssl
Trouvaille ~12 小时前
【Linux】TCP协议基础与连接管理详解:从三次握手到四次挥手
linux·运维·服务器·网络·c++·网络协议·tcp/ip
njmanong13 小时前
Google点名处置IPIDEA及子品牌:代理IP行业进入强治理期
网络·网络协议·tcp/ip
郝学胜-神的一滴14 小时前
TCP通讯的艺术:从握手到挥手的优雅对话
开发语言·网络·网络协议·tcp/ip·程序人生
CS创新实验室16 小时前
《计算机网络》深入学:TCP协议的设计与演进
网络协议·tcp/ip·计算机网络
运维有小邓@20 小时前
基于证书的身份验证:入门指南
网络协议·https·ssl
她说..20 小时前
万字详解WebSocket的用法
java·网络·websocket·网络协议·springboot
会周易的程序员20 小时前
openplc runtime v4 安全
网络·c++·物联网·websocket·安全·https·ssl
IT古董20 小时前
Next.js 本地 HTTPS + 自定义域名无法访问问题排查(Windows / mkcert / HSTS 完整指南)
windows·https·next.js
专注VB编程开发20年21 小时前
PLC协议:Modbus.Device(NModbus4)和手动 Socket.BeginConnect (APM异步编程模型)对比
网络·网络协议·tcp/ip·plc