HTTPS的加密流程

对称加密:只有一个密钥。

加密:明文+密钥=>密文;解码:密文+密钥=>明文。

非对称加密:有两个密钥,一个公钥,一个私钥。

加密:明文+公钥=>密文;解码:密文+私钥=>明文;或加密:明文+私钥=>密文;解码:密文+公钥=>明文。

HTTPS的基本工作过程:

加密:针对HTTP的各种header和body

1.使用对称密钥,来保证业务数据的安全:

客户端:客户端拿着密钥针对要发的数据进行加密,把密文通过网络,传输给服务器。

服务器:拿着密钥,进行解密,得到传送的信息。

在这种情况下黑客如果攻击客户端与服务器之间的一个路由器不会得到密钥,则无法获得传送的信息,但一个服务器对应多个客户端,如果每个客户端用一个密钥,则黑客可以通过自己申请一个客户端来拿到密钥。,所以,每个客户端的密钥都不相同。

此时可以让每个客户端在连接到服务器时自己生成一个密钥,让每个客户端各自生成各自的,互不相关,从而实现每个客户端的密钥都不相同。但是客户端如何让服务器知道密钥?这是对称加密就走不通啦!可以引入非对称密钥

2.引入非对称加密,来安全的传输对称密钥:

在上述过程中黑客没有拿到对称密钥key,此时后续的传输就是安全的。

3.这个过程也不绝对安全,黑客可以使用中间人攻击拿到对称密钥:

4.引入证书,使客户端能够验证公钥是否合法:

由权威机构(权威的颁发证书的机构没有太多,系统内部会内置一批)颁发证书,颁发证书前要提交一些内容:比如公钥,证书里有一个签名,在权威机构颁发证书时同时计算的,这个签名同时被证书的颁发机构使用他自己的私钥进行加密,由于是系统内置的权威机构,客户端的操作系统会自带权威机构的公钥,用于验证签名是否是伪造的。

客户端拿到加密的签名之后,就会拿着权威机构给的公钥,来解密,得到校验和sum1,客户端再按照同样的算法,再结合证书的各个属性,计算一遍校验和,得到sum2。如果sum1和sum2相同则各个属性没被修改,若不同则被修改过。

相关推荐
QYRdata3 分钟前
24.7%年复合增长率!工业元宇宙平台2026-2032年发展预期明确
大数据·网络·人工智能
盛世宏博智慧档案19 分钟前
工程商以太网(RJ45/POE)温湿度传感器完整选型指南
网络
捷烽21 分钟前
三大运营商熔接损耗验收:国家规范与0.08dB的正确理解
运维·网络·信息与通信
新时代牛马23 分钟前
异常向量与VBAR_ELx:Linux entry.S 中的vectors 布局
linux·运维·服务器
BlueAsia_Lab28 分钟前
华为 SuperCharge 认证,覆盖哪些产品?全品类梳理
运维·服务器·华为
H_oRIZoN_29 分钟前
Linux入门DAY32(文件 IO、进程、线程、IPC 通信)
linux·运维·服务器
0+11130 分钟前
Linux --Ext系列文件系统
linux·运维·服务器
CHENKONG_CK31 分钟前
晨控CK-FR08系列与欧姆龙NX系列PLC配置MODBUSTCP例程使用手册
网络·单片机·嵌入式硬件
Yang961135 分钟前
一台顶三台:鼎讯DLJ-1在不同故障类型中的模式切换数据复盘
服务器·网络·数据库
潘正翔40 分钟前
Memcached构建缓存服务器
运维·服务器·数据库·缓存·云原生·memcached