HTTPS原理

HTTPS与HTTP

  • http本身是不安全的,可以截取你的session_id,向服务器发送请求

明文与密文

加密方式

  1. 对称加密 :双方使用同一个秘钥,算法简单,快
  2. 非对称加密 :需要两个秘钥分别进行加密和解密(公钥和私钥),公钥加密,私钥解密;私钥加密公钥解密。但算法复杂,慢
  3. 数据摘要和数据指纹: 数字指纹(数据摘要),其基本原理是利用单向散列函数(Hash 函数)对信息进行运算, 生成一串固定⻓度的数字摘要。数字指纹并不是一种加密机制,但可以用来判断数据有没有被篡改。

对方如何知道秘钥?

通过报文将秘钥以明文 的形式添加进报文,这样对端就可以拿到秘钥

HTTPS的工作过程

方案一对称加密

但秘钥容易被其他人获得,那么别人也可以对密文进行解密。

方案二非对称加密

  • 不足:因为只有客户端有私钥,能对用公钥加密的数据进行解密,实现了数据从服务器到客户端的数据传输;如果从客户端到服务器不可以,因为公钥可以被截取。

方案三两端都使用非对称加密

  • 但这样效率太低了,非对称加密进行加密和解密是很复杂 的,速度慢,并且每次发送数据都要进行加密和解密,这就导致了通信效率低。

方案四对称加密+非对称加密

中间人攻击

  • 方案二,三,四都有被中间人攻击的安全问题。
  • 问题就出在客户端无法识别被发送过来的公钥是否是合法的。那么怎么办呢?

解决方案:对称加密+非对称加密+证书认证

签名

  • 谁签?
    CA机构

证书

  • 签名是对明文数据进行签名
  • 证书的本质就是签名+明文。

流程

  • CA机构也有一套公钥和私钥,用私钥对数据摘要进行加密,并且只有CA机构持有私钥,也就是只有CA机构能进行加密,也就是只有CA机构能签发证书。
  • 中间人如果修改明文信息,就与签名不匹配,则错误;如果想要同时也修改签名是不可以的,因为不知道私钥,无法加密。
相关推荐
聚美智数6 小时前
网站HTTP状态查询-SEO优化
网络·网络协议·http
是真的小外套7 小时前
第9章:网络层安全协议 IPSec 学习笔记
网络·网络协议·tcp/ip
云梦谭8 小时前
WebSocket 协议详解:从 HTTP 握手到全双工通信
websocket·网络协议·http
中屹指纹浏览器svip9 小时前
静态 IP和动态 IP,搭配指纹浏览器该怎么选?
网络·网络协议·tcp/ip·中屹指纹浏览器
木子n19 小时前
车载以太网与SOME/IP服务化通信实战-02.状态机与订阅:SOME/IP-SD的三态迁移、重传账与上电风暴
嵌入式硬件·网络协议·车载系统·车载以太网·some/ip
ITxiaobing20239 小时前
选型不踩坑:IPinfo 之外,IP 地址定位服务还有哪些可选项
网络·网络协议·tcp/ip
用户27886072856710 小时前
战争雷霆换区记录:字段里的「未知」不能写成正常
网络协议·游戏开发
日常筹谋记11 小时前
仓储监测无线化改造经验:明治无线组网方案与WL系列Master总站落地复盘
网络·网络协议
溜达的大象13 小时前
管家婆远程访问实战:SQL Server 2022配置、PC分机端修改与固定TCP连接
网络·网络协议·tcp/ip
白帽攻防录15 小时前
SRC 挖洞:QUIC 协议栈双 RCE,HTTP/3 的新攻击面怎么挖
网络·网络协议·http·网络安全·http/3