了解HTTPS的三次握手

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

第一次握手

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

第二次握手

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

第三次握手

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

服务器后续

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

后续请求

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

相关推荐
一起学开源1 小时前
实战总结:BACnet/IP 跨网段通讯的两种解决方案(BBMD 与 Foreign Device)
运维·网络·物联网·bacnet·网络协议·tcp/ip
fei_sun5 小时前
【复习】计网每日一题1123---UDP首部检验和
网络·网络协议·udp
2501_915921436 小时前
抓包技术全面指南:原理、工具与应用场景
android·ios·小程序·https·uni-app·iphone·webview
Arva .6 小时前
HTTP vs. HTTPS 有什么区别?
http·https
IUGEI9 小时前
【计算机网络】HTTP/3如何实现可靠传输?
java·网络·后端·网络协议·tcp/ip·计算机网络·http
爱学习的大牛12312 小时前
基于 FRP 实现内网穿透的跨网络 HTTP 服务转发方案
网络·网络协议·http
重启的码农12 小时前
enet源码解析(5)事件驱动服务 (Event Service)
c++·网络协议
重启的码农12 小时前
enet源码解析(6)协议处理逻辑 (Protocol Processing)
c++·网络协议
草莓熊Lotso13 小时前
Git 本地操作进阶:版本回退、撤销修改与文件删除全攻略
java·javascript·c++·人工智能·git·python·网络协议
ANGLAL13 小时前
30.分布式事务:本地事务 + RPC 的“隐形炸弹”
分布式·网络协议·rpc