面试常问:HTTPS的加密过程 ----- 光明和黑暗的恩怨情仇

news2024/12/28 3:35:57

目录

关于运营商劫持 :

什么是运营商劫持??

什么是运营商?

为什么要劫持?

如何劫持?

劫持的危害 

互联网公司怎么办?

HTTPS

什么是HTTPS

一些概念:

HTTPS加密

1. 对称加密:

2. 非对称加密

3. 非对称加密+对称加密

 4. 加密方案 --- 重点


GDM (GoodManSS) - Gitee.comicon-default.png?t=M85Bhttps://gitee.com/GoodManSS      我的gitee主页



关于运营商劫持 :

什么是运营商劫持??

运营商劫持    ==     你一级的红buff 被对面平a抢走

什么是运营商?

  • 运营商是指那些提供宽带服务的ISP,包括三大运营商中国电信、中国移动、中国联通,还有一些小运营商,比如长城宽带、歌华有线宽带。
  • 运营商提供最最基础的网络服务, 掌握着通往用户物理大门的钥匙。

为什么要劫持?

  • 网络运营商轻易劫持的能力,并且 劫持 几乎等于 抢劫,有大量的收益

如何劫持?

  • 域名劫持,跟PC端相似,用户在正常联网状态下(4G/WiFi),目标域名会被恶意地错误解析到其他IP地址,造成用户无法正常使用服务。
  • 数据劫持,对于返回的内容,会在其中强行插入弹窗或嵌入式广告等其他内容,干扰用户的正常使用。一来由于劫持者替换了自己的广告,导致正常产品的广告无法展示,因此给互联网公司造成直接经济损失;其次互联网公司每年都会投入大笔的资金资源去获取流量,但是由于劫持,用户正常流量被伪装成渠道流量,导致投入的资金被嫁接到做劫持的渠道中。打个比方:

劫持的危害 

  •  你给女朋友互相写情书,但是你们发出的信件居然连信封都没有,而送信的邮差恰恰是个流氓。。。(画面太美,想象不下去了)
  • 还有更猛烈的。运营商即使再无节操,也是有基本底线的。但如果黑客利用运营商强上你的时候留下的漏洞,“黑吃黑”地再次劫持了你的数据,那么事情的发展就不在掌握中了。黑客完全可以调用你的摄像头、获取你的所有登陆密码、读取或修改你手机上的所有文件,包括照片,嗯。 

互联网公司怎么办?

  • 告上法庭:法律并不健全,一个小小公司跟 运营商 玩  ??!
  • 发挥互联网公司的技术优势:我们可以发现 互联网之所以劫持,并精准的投放给你不同类目的东西,一切都源于 “信息透明”
  • 假如信息不再透明:
  • 你给女朋友互相写情书,信封包死,送信的是个流氓,但他却不能打开信封
  • 运营商 拿到你的请求  一脸懵逼 ,即便黑客,拿到你的数据,啥也看不懂,那岂不是一点办法都没?

HTTPS

什么是HTTPS

  • HTTP :HyperText Transfer Protocol,超文本传输协议
  • HTTPS :可以理解为HTTP+SSL/TLS。SSL/TLS是一种密码通信框架,他是世界上使用最广泛的密码通信方法。(现在用的都是TLS,SSL已经被淘汰了)

HTTPS就是互联网公司为了数据传输安全,而对HTTP进行加密升级的协议

一些概念:

  • 明文:明文(plaintext)是加密之前的原始数据
  • 密文:通过密码(cipher)运算后得到的结果成为密文
  • 秘钥:密钥 (key) 密钥是一种参数,它是在使用密码(cipher)算法过程中输入的参数。

很多知名的密码算法都是公开的,密钥才是决定密文是否安全的重要参数,通常密钥越长,破解的难度越大,加密就是  将明文通过密钥转变成密文;解密就是 将 密文通过密钥转变成明文。

对称加密:对加密和解密 使用相同密钥。

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

HTTPS加密

1. 对称加密:

对称加密 :同一把密钥进行加密、解密;

但是有个问题,我们如何保证把这个密钥 发送给对方呢?

密钥也很容易被攻击者截获,攻击者通样能够进行加密解密,这样的话,加密就没有了意义。

2. 非对称加密

非对称加密 :用一把密钥进行加密(公钥),用另一把密钥进行解密(私钥)。

这样的话,攻击者只能截获到 密文和公钥,并不能进行解密。

但是,非对称加密保证了数据的安全性,但由于数学上的复杂性,加密解密的效率是很低

3. 非对称加密+对称加密

非对称加密传输密钥,对称加密传输数据。

这样既保证了安全,又保证了效率。

~~~~~~看似安全~~~~~~~看完下图你还会觉得安全吗?~~~~~

 4. 加密方案 --- 重点

防止中间人攻击,我们又引入了一个 “证书”

证书机制:引入一个公正的有权威的第三方,当某一方想要发布公钥时,它将自身的身份信息及公钥提交给这个第三方,第三方对其身份进行证实,如果没有问题,则将其信息和公钥打包成为证书(Certificate)。而这个公正的第三方,就是常说的证书颁发机构(Certificate Authority)。当我们需要获取公钥时,只需要获得其证书,然后从中提取出公钥就可以了。

HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段

通过第三方证书的验证,我们客户端就可以判断 这个公钥是否被掉包了,这样也就破解了中间人攻击。

最后一个小问题:这样就真的安全了吗? 道高一尺魔高一丈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/20907.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于java+ssm购物商城网站系统-计算机毕业设计

项目介绍 乐优购物商城是商业贸易中的一条非常重要的道路,可以把其从传统的实体模式中解放中来,网上购物可以为消费者提供巨大的便利。通过乐优购物商城这个平台,可以使用户足不出户就可以了解现今的流行趋势和丰富的商品信息,为…

请求跨域问题

在前端请求接口时,出现跨域是很常见的问题,跨域的解决方法也很多,但是目前通用的是以下两种方式: 开发环境生产环境在服务端配置 CORS在服务端配置 CORS配置开发服务器代理,比如 vite-server.proxy配置生产服务器代理…

Debezium的增量快照

GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。作者: 如常 Debezium Incremental snapshotting Introduction CDC(Change-Data-Capture)正…

Java之反射相关知识补充

Java之反射一、概述1、静态语言和动态语言1.1 静态语言1.2 动态语言2、Reflection(反射)2.1 介绍2.2 流程2.3 Java反射机制提供的功能2.4 优缺点(1)优点(2)缺点2.5 反射相关主要API2.6 示例二、反射相关操作1、获取Class类的实例1…

第十二节:String类【java】

目录 📘1.1 字符串构造方法 📒1.2 String对象怎样比较 📜1.2.1 引用类型 比较的是引用中的地址。 📄1.2.2 boolean equals(Object anObject) 方法:比较怕两个引用所指的对象当中的内容是否一致 📑1.2…

企业级nginx使用

企业级nginx使用 nginx实现平滑升级 [rootlnmp nginx-1.16.0]# cd /usr/local/nginx/sbin/ [rootlnmp sbin]# ls nginx nginx.old [rootlnmp sbin]# ./nginx -v nginx version: nginx/1.16.0 [rootlnmp sbin]# ./nginx.old -v nginx version: nginx/1.14.2 [rootlnmp sbin]#操…

物联网开发笔记(49)- 使用Micropython开发ESP32开发板之控制RGB全彩LED模块

一、目的 这一节我们学习如何使用我们的ESP32开发板来控制RGB全彩LED模块。 二、环境 ESP32 RGB全彩LED模块 Thonny IDE 几根杜邦线 1,共阴极接线方法 2,共阳极接线方法 三、代码 1,亮指定的颜色,比如百度蓝。 我们使用取色…

万字长文,精美插图,带你玩转redis

资料下载: 链接: https://pan.baidu.com/s/1ue4Bnv4b4ifp0S0I_yOJ_w?pwdd9x9 提取码: d9x9 Redis学习笔记 1. 认识Redis 1.1 什么是NoSQL? SQL是关系型数据库,NoSQL是非关系型数据库 下面是几种非关系型数据库及其优缺点和应用场景。 分类…

[附源码]java毕业设计网上书店系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【分隔结构】动宾分离

动宾分离 动词 宾语 状语:如果宾语较长,状语较短,会转化为 动词 状语 宾语 While I disapprove of what you say, I would defend to the death your right to say it. 名词 引导词 主语 及物动词 You are the man that I will marry…

【K8S】学习笔记(一)

K8S学习笔记一、Kubernetes1.1、K8S功能1.2、K8S架构组件1.2.1、架构细节1.3、K8S核心概念1.3.1、Pod1.3.2、Volume1.3.3、Controller1.3.4、Deployment1.3.5、Service1.3.6、Label1.3.7、Namespace1.3.8、API二、搭建K8S2.1、K8S搭建规划2.1.1、单master集群2.1.2、多master集…

Html5的新增特性

Html5的新增特性主要是针对以前的不足,增加了一些新的标签,新的表单和新的表单属性等。 这些新特性都有兼容性问题,基本是IE9以上版本的浏览器才支持,如果不考虑兼容性问题,可以大量使用这些新特性。 声明&#xff1…

m基于迫零ZF准则的通信均衡器的matlab仿真

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 在数字通信系统中,码间串扰和加性噪声是造成信号传输失真的主要因素,为克服码间串扰,在接收滤波器和抽样判决器之间附加一个可调滤波器,用…

STM32CubeMX:串口DMA

DMA:直接储存区访问,DMA传输将数据从一个地址空间复制到另一个空间。DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场过程,通过硬件为RAM何IO设备开辟一条直接传输数据的通道,从而可以提高C…

WSL下安装ubuntu 18.04 +meep进行FDTD仿真计算

WSL下安装ubuntu 18.04 meep进行FDTD仿真计算前言WSL安装过程打开虚拟环境下载Ubuntu并修改安装路径更改软件源MeepVScode远程访问测试程序前言 使用meep进行FDTD开发,开源。这里记录一下自己的安装过程,可以不安装在C盘,有助于后面进行修改…

【JVM】java的jvm类加载器和类加载子系统

JVM类加载器和类加载子系统一、JVM体系结构二、ClassLoader类介绍三、类加载子系统3.1 加载阶段3.1.1 引导类加载器(Bootstrap ClassLoader)3.1.2 扩展类加载器(Extension ClassLoader)3.1.3 应用程序类加载器(Applica…

Android入门第32天-Android中的Alert Dialog的使用大全

写在我的第200篇博客中的“前言” 这篇是我的第200篇博客。落笔写正文前我感触彼深。自从一个小P孩那时写博客只是为了一时的好玩,到逐步发觉只有让越来越多的人理解了技术,把技术普及到门槛越来越低,才会反推技术人员的处镜越来越好。因为必…

Allegro如何输出STP文件操作指导

Allegro如何输出STP文件操作指导 Stp文件用于查看实物,Allegro支持输出STP格式的文件,下面介绍如何输出,操作步骤如下 选择File-export-STEP 根据自己的需要选择参数 如果需要输出电气过孔,选electronic hole,需要外层铜皮,勾选External Copper 常规默认值就可以了,…

UE5笔记【六】流明引擎Lumen简介;Lumen处理发光物体。

RealTimeGlobal illumination System。实时全局照明系统。 打开Lumen 从设置中,打开【项目设置】往下找【渲染Render】 然后再GI中将途中两项选择为Lumen。 同时需要一个后期处理量PostProcessVolume。刚好场景中有。 需要勾选【全局光照GI】中的【方法】选定为【…

Spring七天速成:入门必看(二)

-----持续更新Spring入门系列文章----- 如果你也喜欢Java和算法,欢迎订阅专栏共同学习交流! 你的点赞、关注、评论、是我创作的动力! -------希望我的文章对你有所帮助-------- 前言: 在前篇文章当中我们已经大概了解了Spring的…