• HTTPS(对称加密+非对称加密+证书)


    目录

    1. 加密和解密

    HTTPS工作过程

    2. 对称加密 

    3. 对称加密

    4. 既然都有非对称加密了,那为啥还要有对称加密

    5. 中间人攻击

    6. 引入证书 


    HTTPS 也是一个应用层协议. 是在 HTTP 协议的基础上引入了一个加密层.

    HTTP 协议内容都是按照文本的方式明文传输的. 这就导致在传输过程中出现一些被篡改的情况.

    现在HTTP的页面已经很少了,主要还是因为 "运营商劫持事件"

    1. 加密和解密

    加密就是把 明文 (要传输的信息)进行一系列变换, 生成 密文 .

    解密就是把 密文 再进行一系列变换, 还原成 明文 .

    对称加密: 加密和解密使用同一个密钥

    非对称加密:加密和解密使用不同密钥


    HTTPS工作过程

    要保证安全,那就要加密,加密简单的办法就是,对称加密

    2. 对称加密 

    最简单的对称加密是 按位异或   

     一个服务器,要给很多客户端提供服务,这些客户端使用的是不同的秘钥

    因为如果都使用的都是同一个秘钥,那就相当于没有秘钥(因为如果此时黑客把自己也当一个客户端的话,向服务器发送请求,此时就获得了这个秘钥)

    所以典型的做法,就是每个客户端,在建立连接之初,就先自己生成秘钥,然后进行通信的时候,先把自己的秘钥发送给服务器

     为了解决这个问题,那就需要引入 非对称加密


    3. 对称加密

     加密时一个秘钥,解密时一个秘钥,这两个是成对的.  如果知道一个,是无法推测是另一个的

    比如 可以使用秘钥A来加密,配对的秘钥B来解密

            也可以使用秘钥B来加密,配对的秘钥A来解密

    可以让服务器,生成一对非对称秘钥

    一个是公开出来的,任何人都能获取到 公钥

    另一个是私密的,只有服务器自己知道 私钥

    客户端就可以先从服务器拿到服务器的公钥

    然后使用公钥对自己生成的对称秘钥进行加密

    此时由于外界只有公钥,私钥只是服务器自己所有的(别人拿不到)

    只有服务器可以使用私钥对上述请求进行解密


    4. 既然都有非对称加密了,那为啥还要有对称加密

    因为对称加密开销成本较低,非对称加密开销成本大


     虽然说非对称加密已经很安全了,但黑客针对这个情况,还是有办法进行入侵的,那就是中间人攻击

    5. 中间人攻击

    6. 引入证书 

    中间人攻击的关键,就是要能够证明当这个公钥,是服务器自己的公钥,而不是伪造的

    上面这套HTTPS的 对称加密+非对称加密+证书 这个流程不是HTTPS独有的

    这套机制属于一个专门的协议 SSL(旧)/ TLS(新) (很多加密的场景都会用到这个)

    HTTPS = HTTP + SSL

  • 相关阅读:
    Ubuntu 命令行安装 nodejs 并更新
    项目部署到Linux
    一篇文章教会你写一个贪吃蛇小游戏(纯C语言)
    车载以太网-传输层-UDP
    SVM——支持向量机(二)
    结构型模式-适配器模式
    淘宝天猫API:buyer_cart_add-添加到购物车
    基于Jsp的OA企业人事管理系统【论文、数据库设计、源码、开题报告】
    WebSocket原理简介
    vue开发网站--对文章详情页的接口内容进行处理
  • 原文地址:https://blog.csdn.net/m0_58761900/article/details/127852527