Https的加密机制

HTTP 与 HTTPS 的核心区别

HTTP: 明文传输,数据在网络中"裸奔",极易被窃听和篡改。

HTTPS: 引入了 SSL/TLS 加密层,通过复杂的混合加密机制保障数据传输的绝对安全。

CA 证书的签发与验证

HTTPS 安全的核心在于解决"如何证明服务器身份"的问题,防止中间人冒充。这就需要 CA(权威证书颁发机构)的介入。

服务器申请签名: 服务端将自己的域名、企业认证信息以及自身的公钥整合打包,提交给 CA 机构。CA 机构在审核通过后,会使用 CA 自己的私钥对这些内容进行加密,生成"CA 签名"(即数字证书),交还给服务端。 服务端将带有 CA 签名的包发送给客户端。客户端通过操作系统提前内置好的(或自身代码内置的)权威 CA 机构公钥,对签名进行解密操作。(此时如果中间人尝试伪造,用 CA 公钥解开了包,但由于没有 CA 的私钥,无法生成合法签名)解密成功后,客户端就安全、可信地提取出了里面的核心内容:服务端真正的公钥。而后客户端在本地生成一把用于后续通信的对称密钥,(为什么用对称密钥而不用非对称密钥:非对称密钥的解密耗时太久,效率太低)而后其使用刚刚获取的服务端公钥,将这把对称密钥加密,并发送给服务端。(此时中间人截获了数据,由于没有服务端的私钥,也根本无法解密)。服务端收到密文后,用自己的私钥解密,顺利获取到客户端发来的对称密钥。而后,双方都拥有了同一把对称密钥,后续所有的业务往来都使用这把对称密钥进行高速加密通话,让中间人无从下手。(但这只是单向认证)

相关推荐
liangshanbo12151 小时前
前端高级面试题:WebSocket 双向流式通信怎么设计?
前端·websocket·网络协议
可乐鸡翅yeah_1 小时前
新手梳理:HLS 线上问题,哪些该提给 CDN,哪些该找后端切片服务
开发语言·前端·javascript·vue.js·网络协议·http·m3u8在线
网络小江2 小时前
上网第四十一课:从输入网址到页面显示——一次完整的网络之旅
网络协议
m0_738185822 小时前
Flutter 鸿蒙化实战:http_proxy 适配 OpenHarmony,HTTP 代理
flutter·http·华为·harmonyos·鸿蒙
灯澜忆梦2 小时前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
wangbing11253 小时前
开发指南148-WebSocket-后端
网络·websocket·网络协议
网络小江13 小时前
上网第三十九课:TCP 的可靠性——滑动窗口、重传与拥塞控制
网络协议
91刘仁德15 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
Lsetea15 小时前
Nginx加载证书时报SSL_CTX_use_PrivateKey_file失败:私钥配对与权限排查
nginx·https·ssl证书·私钥·证书部署
可乐鸡翅yeah_17 小时前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线