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

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 面试常问:HTTPS的加密过程 ----- 光明和黑暗的恩怨情仇

关于运营商劫持 :

什么是运营商劫持??

运营商劫持    ==     你一级的红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. 对称加密:



0d9b50110e584e719366bbacd27ab344.png


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


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


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


2. 非对称加密

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


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


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


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

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


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


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


4a62c9f0e8f14ffcb70dc294e86bd30b.png


4. 加密方案 --- 重点

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


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


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


26855c004c6d430ca8aef9ce9ff94c8e.jpg

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

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


相关文章
|
1月前
|
安全 网络安全 数据安全/隐私保护
内网IP地址实现HTTPS加密访问教程
在内网环境中,为确保数据传输的安全性,绑定SSL证书搭建HTTPS服务器至关重要。本文介绍了内网IP地址的前期准备、申请SSL证书的步骤以及客户端配置方法。具体包括选择合适的CA、注册账号、提交申请、下载证书,并在客户端导入根证书,确保通信数据的安全加密。推荐使用JoySSL提供的技术解决方案,确保内网设备通信安全。
内网IP地址实现HTTPS加密访问教程
|
1月前
|
域名解析 算法 安全
免费申请https加密全攻略
访问JoySSL官网注册账号,申请免费SSL证书。选择证书类型,填写域名信息,生成CSR文件,验证域名所有权。下载并部署证书至服务器,测试HTTPS连接。注意定期续期,确保兼容性和安全性。如有问题,可联系JoySSL客服。
|
24天前
|
安全 算法 网络协议
网易面试:说说 HTTPS 原理?HTTPS 如何保证 数据安全?
45岁老架构师尼恩在其读者交流群中分享了关于HTTP与HTTPS的深入解析,特别针对近期面试中常问的HTTPS相关问题进行了详细解答。文章首先回顾了HTTP的工作原理,指出了HTTP明文传输带来的三大风险:窃听、篡改和冒充。随后介绍了HTTPS如何通过结合非对称加密和对称加密来解决这些问题,确保数据传输的安全性。尼恩还详细解释了HTTPS的握手过程,包括如何通过CA数字证书验证服务器身份,防止中间人攻击。最后,尼恩强调了掌握这些核心技术的重要性,并推荐了自己的技术资料,帮助读者更好地准备面试,提高技术水平。
|
3月前
|
安全 网络安全 数据安全/隐私保护
HTTPS中的加密算法
HTTPS中的加密算法
|
2月前
|
安全 网络协议 网络安全
【HTTPS】对称加密和非对称加密
【HTTPS】对称加密和非对称加密
40 0
|
5月前
|
缓存 网络协议 算法
(二)Java网络编程之爆肝HTTP、HTTPS、TLS协议及对称与非对称加密原理!
作为一名程序员,尤其是Java程序员,那必须得了解并掌握HTTP/HTTPS相关知识。因为在如今计算机网络通信中,HTTP协议的作用功不可没,无论是日常上网追剧、冲���、亦或是接口开发、调用等,必然存在HTTP的“影子”在内。尤其对于WEB开发者而言,HTTP几乎是每天会打交道的东西。
106 10
|
4月前
|
安全 Nacos 数据安全/隐私保护
【技术干货】破解Nacos安全隐患:连接用户名与密码明文传输!掌握HTTPS、JWT与OAuth2.0加密秘籍,打造坚不可摧的微服务注册与配置中心!从原理到实践,全方位解析如何构建安全防护体系,让您从此告别数据泄露风险!
【8月更文挑战第15天】Nacos是一款广受好评的微服务注册与配置中心,但其连接用户名和密码的明文传输成为安全隐患。本文探讨加密策略提升安全性。首先介绍明文传输风险,随后对比三种加密方案:HTTPS简化数据保护;JWT令牌减少凭证传输,适配分布式环境;OAuth2.0增强安全,支持多授权模式。每种方案各有千秋,开发者需根据具体需求选择最佳实践,确保服务安全稳定运行。
415 0
|
5月前
|
数据安全/隐私保护
https【详解】与http的区别,对称加密,非对称加密,证书,解析流程图
https【详解】与http的区别,对称加密,非对称加密,证书,解析流程图
184 0
|
4月前
|
存储 Java
【IO面试题 四】、介绍一下Java的序列化与反序列化
Java的序列化与反序列化允许对象通过实现Serializable接口转换成字节序列并存储或传输,之后可以通过ObjectInputStream和ObjectOutputStream的方法将这些字节序列恢复成对象。
|
1月前
|
存储 缓存 算法
面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了!
本文介绍了多线程环境下的几个关键概念,包括时间片、超线程、上下文切换及其影响因素,以及线程调度的两种方式——抢占式调度和协同式调度。文章还讨论了减少上下文切换次数以提高多线程程序效率的方法,如无锁并发编程、使用CAS算法等,并提出了合理的线程数量配置策略,以平衡CPU利用率和线程切换开销。
面试官:单核 CPU 支持 Java 多线程吗?为什么?被问懵了!