[网络]https的概念及加密过程

文章目录

  • [一. HTTPS](#一. HTTPS)
  • [二. https加密过程](#二. https加密过程)

一. HTTPS

https本质上就是http的基础上增加了一个加密层, 抛开加密之后, 剩下的就是个http是一样的

s => SSL

HTTPS = HTTP + SSL

这个过程, 涉及到密码学的几个核心概念

  1. 明文
    要传输的真正意思是啥
    2)密文
    加密之后得到的数据
    这个密文, 即使被拿到了, 也不知道真正的含义
  2. 密钥
    用来加密和解密的重要的数据

把明文 通过密钥 变成密文 => 加密

把密文 通过密钥 变成明文 => 解密

  1. 对称加密

加密和解密, 使用同一个密钥就行了

加密解密的速度比较快

  1. 非对称加密

密钥是一对, 分别是公钥和私钥

可以使用公钥加密, 此时就是私钥解密

或者使用私钥加密, 此时就是公钥解密

加密的素的比较慢, 安全性更高

二. https加密过程

  1. 引入对称加密
    首先, 最简单的办法,就是引入对称密钥
    客户端和服务器之间通过密文传输, 然后根据密钥进行破解
    这个密钥, 必须是每个客户端都有一个自己的
    如果每个客户端都是相同的, 那么如果别人拿到这个密钥就可以破解了
    可是, 当客户端告诉服务器密钥时, 可能被黑客截取:

    所以, 我们必须给密钥再进行加密
  2. 引入非对称加密
    非对称加密的方式, 针对对称密钥来进行加密

为什么不针对数据加密使用非对称密钥?

非对称加密的系统开销比对称加密高很多, 消耗的时间, 也比对称加密多很多, 所以不太适合使用非对称加密的方式来加密业务数据

客⼾端在本地⽣成对称密钥, 通过公钥加密, 发送给服务器.

• 由于中间的⽹络设备没有私钥, 即使截获了数据, 也⽆法还原出内部的原⽂, 也就⽆法获取到对称密

• 服务器通过私钥解密, 还原出客户端发送的对称密钥. 并且使⽤这个对称密钥加密给客⼾端返回的响

应数据.

• 后续客户端和服务器的通信都只⽤对称加密即可. 由于该密钥只有客户端和服务器两个主机知道, 其

他主机/设备不知道密钥即使截获数据也没有意义

但是, 客户端怎么拿到公钥呢?

  1. 中间人攻击
    如果使用服务器告知客户端公钥的方法, 同样会被黑客截获数据
  2. 引入公证机构
    解决上述问题, 最重要切入点, 就是让客户端能够区分当前的公钥是不是服务器自己的公钥, 是不是被伪造出来的公钥, 所以引入了公证机构

服务器上线自己的网站时, 会向公证机构申请"证书", 服务器需要保存好这个证书

这个证书中会包含一系列消息:

1)发证机构

2)证书的有效期

3)服务器的公钥

4)证书的所有者

5)持有者网站的的主域名

6)数字签名

公正机构, 会生成一对非对称密钥, 分为公钥和私钥, 拿着私钥对证书中的一系列数据的校验和进行加密, 就得到了数字签名

客户端收到证书后, 就会对证书的合法性就行校验:

第一步: 针对证书的字段, 计算校验和1

第二步: 针对数字签名进行解密

数字签名是基于公正机构的私钥来加密的

就需要用公正机构的公钥进行解密
公证机构的公钥, 是操作系统内置的公钥!!!

解密后, 得到校验和2

第三步: 客户端比较 校验和1 == 校验和2

如果相等, 就说明, 证书没有被篡改过, 是有效的, 那么证书中的公钥, 就是可信的服务器公钥了

相关推荐
qq_589568108 小时前
springbootweb案例,出现访问 http://localhost:8080/list 一直处于浏览器运转阶段
java·网络协议·http·list·springboot
代码中介商9 小时前
Linux TCP 网络编程完全指南:从三次握手到高并发服务器
服务器·网络·tcp/ip
咖喱o9 小时前
QinQ/VLAN Stacking
linux·运维·服务器·网络
AI周红伟11 小时前
周红伟:运营商一季度净利集体下滑 Token运营提速
大数据·网络·人工智能
marsh020611 小时前
43 openclaw熔断与降级:保障系统在异常情况下的可用性
java·运维·网络·ai·编程·技术
汽车仪器仪表相关领域12 小时前
Kvaser Memorator Professional 5xHS CB:五通道CAN FD裸板记录仪,赋能多总线系统集成测试的旗舰级核心装备
大数据·网络·人工智能·单元测试·汽车·集成测试
初学者,亦行者12 小时前
计算机网络必考:一文吃透 TCP/IP 体系结构(附高清思维导图)
网络·tcp/ip
段一凡-华北理工大学13 小时前
【高炉炼铁领域炉温监测、预警、调控智能体设计与应用】~系列文章10:实时预警机制:跑在问题前面!
网络·人工智能·python·知识图谱·高炉炼铁·工业智能体
WJ.Polar13 小时前
Scapy基本应用
linux·运维·网络·python
@insist12313 小时前
信息安全工程师-入侵检测核心技术、APT 应对与工程实践
网络·安全·软考·信息安全工程师·软件水平考试