网络原理-HTTPS

HTTPS是什么

HTTPS也是一个应用层协议,在HTTP的基础上引入了加密.HTTP的传输是明文传输的,这就导致了在传输过程中可能会被人恶意篡改.在互联网上,明文传输是比较危险的事.HTTPS进行了加密,进⼀步的来保证⽤⼾的信息安全.

加密是什么

加密就是把明文通过一系列的转变,变成密文.解密就是把密文通过一系列的转变,变成明文.在这个过程中,往往需要一个或者多个中间数据辅助一个过程,这个数据称为密钥.

HTTPS的工作过程

在网络传输中,不再传输明文,而是传输加密后的密文.加密的方法大体分为两类:对称加密与非对称加密.

对称加密

对称加密是通过使用同一个密钥进行加密和解密.能通过密钥把明文加密成密文,也能使用密钥把密文解密成明文.

引入对称加密后,即使黑客拦截了数据,但是不知道密钥是什么,就无法对数据解密,这样就保证了安全.但是,服务器一次会和多个客户端进行通信,这些客户端和服务器之间使用的密钥肯定是不相同的(如果相同,那么密钥就形同虚设了).这样,就需要在一开始沟通,这次通信的密钥是什么,这一次通信是没有加密的.如果,黑客拦截到这次通信,那么黑客就知道密钥是多少,就能对后续的通信进行解密.

如果是这种情况,就要对密钥的密钥进行加密,这样就变成了一个套娃问题,密钥的密钥也可能会被拦截,此时对称加密就无法解决这样的问题.

非对称加密

由于对称加密无法解决,密钥传输过程是明文的问题,于是就引入了非对称加密.

非对称加密是什么?非对称加密中会有两个密钥,一个叫"公钥"一个叫"私钥".

如果使用公钥对数据加密,那么就只能使用私钥对数据进行解密.

如果使用私钥对数据加密,那么就只能使用公钥对数据进行解密.

但是非对称加密是非常消耗性能的,如果通信过程全程使用非对称加密,很可能导致服务器崩溃,在HTTPS的通信中,只对对称密钥加密即可.如果对称密钥是安全的,那么对称加密就是安全的.公钥需要先从服务器获取.

这种情况,客户端无法得知获取到的公钥是否是伪造的.黑客使用中间人攻击,让客户端以为在和服务器通信,实际是客户端在和黑客通信.

像这样,黑客设备在中间充当一个转发服务器,就可以知道通信过程中的所有信息.

引入证书

为了防止出现上述的中间人攻击,就引入了证书.证书是服务器在运营前,向公证机构申请的一份标识.证书中包含:证书发布机构,有效期,证书持有者,公钥,Host,签名等待信息.客户端在访问服务器时先获取证书,就能获取到公钥.那么,证书是如何防止篡改的呢?

证书中有一个重要的信息:签名,签名是基于非对称算法的,是一个经过加密的校验和.签名的加密是公证机构使用私钥进行的加密,而公钥一般是内置在操作系统中的.

在中间人攻击中,黑客如果篡改了证书的信息,如公钥,那么在客户端收到证书后,使用签名中的校验和对证书进行判断真伪,就能发现证书被篡改.黑客修改签名来篡改证书呢?显然是不行的,因为签名是由公证机构的私钥加密的,当黑客修改签名后,只能通过其他方法对签名加密.客户端收到后,无法使用公钥正确解密签名,也能知晓证书被篡改.

如果中间人选择调包证书,也是行不通的.因为证书中包含Host,当客户端发现证书中的Host与目标Host不同时,也能知晓服务器证书被调包.

一次通信的完整流程

相关推荐
隐擎fox3 分钟前
解密 HTTP/2 帧时序与流控指纹:Akamai H2 指纹逆向检测与协议重塑工程实战
网络·网络协议·tcp/ip·http
艾莉丝努力练剑28 分钟前
【AI大模型接入SDK】Trae生成main方法
网络·人工智能·网络协议·http·架构·1024程序员节
隔窗听雨眠39 分钟前
从行为引导到基础设施约束:AGI代理风险缓解的工程化路径
网络·人工智能·agi
pt10431 小时前
Cisco设备网络安全系列-16:微服务、Kubernetes与无服务器架构安全
网络·安全·微服务·架构
SatanII1 小时前
Kubernetes 网络
网络·容器·kubernetes
青瓦梦滋10 小时前
WebSocket协议
linux·服务器·网络·c++·websocket·网络协议·http
zhang1338308907511 小时前
传统机械三杯式风速传感器易磨损冻堵?CG-88金属超声波风速风向传感器给出免运维方案
运维·服务器·网络·人工智能·自动化
知已难寻11 小时前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
IpdataCloud13 小时前
批量查IP的API接口怎么选?免费API配额瓶颈与离线库本地批量方案实测
网络·网络协议·tcp/ip
ITyunwei098714 小时前
售后夜间值守怎么落地:从告警到交接的工单系统配置笔记
网络