网络:简述HTTPS工作流程中的加密与解密

网络:简述HTTPS工作流程中的加密与解密


我们先来看客户端发起 “https://www.domain.com/” 请求的流程图:
客户端发起 “https://www.domain.com/” 请求的流程图
上图流程中的解释如下:

  1. client 发出请求;
  2. server 收到请求,并自己生成一对密钥,即服务端公钥Server-Public服务端私钥Server-Private
  3. server 把生成的服务端公钥Server-Public传递给 client (除了服务端公钥Server-Public,还有很多额外信息);
  4. client 收到服务端公钥Server-Public后进行判断,若无效,弹出警告;否则生成一串随机数,我们称之为客户端私钥Client-Private ,然后 client 用 server 传过来的服务端公钥Server-Public对该随机数加密,形成加密后的 【客户端私钥Client-Private】
  5. client 把加密后的 【客户端私钥Client-Private】 传递给 server;
  6. server 收到加密后的 【客户端私钥Client-Private】,用服务端私钥Server-Private把加密后的 【客户端私钥Client-Private】 解密成未加密的客户端私钥Client-Private,然后把需要传递的数据用 未加密的客户端私钥Client-Private进行加密 【数据】
  7. server 把加密后的 【数据】 传递给 client;
  8. client 收到加密后的 【数据】,用 客户端私钥Client-Private 解密,完成一次交互,反之亦然。

整体流程就是这样,涉及到对称加密和非对称加密。利用非对称加密的安全性来加密那一串随机数 - - 客户端私钥Client-Private ,利用对称加密的快捷性来加密报文数据,总体来说就是把真正加密解密的密钥(客户端私钥Client-Private )用 服务端公钥Server-Public服务端私钥Server-Private来加密。


补充:
     1 . 对称加密是指加密和解密用一致的密钥,特点是快。
     2 . 非对称加密是指密钥区分公钥和私钥,公钥加密,私钥解密(私钥好比唯一的一把钥匙,公钥好比锁,钥匙只有一把,但锁可以有很多,被锁头锁上的数据全天下只有一把私钥才能打开),特点是安全,但是慢。

注意: 本文只进行简单的描述,未深入讲解HTTPS的加密流程。例如:第三步发送给客户端的是ssl证书;第四步是根据系统中认证的证书机构,判断ssl证书的正确性,包括ssl证书的颁发机构,有效期,数字签名等。若无效,弹出警告;否则生成一串随机数(客户端私钥Client-Private) ,除此之外还有后续通讯用的对称加密算法等。


参考:https://www.jianshu.com/p/a68ca86183d7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小二(海阔天空)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值