学习
实践
活动
工具
TVP
写文章
专栏首页用户7621540的专栏为什么HTTPS是安全的,一张图告诉你

为什么HTTPS是安全的,一张图告诉你

为什么要有HTTPS

在HTTPS出现之前,所有请求都是以明文方式送出的,那么如果有人在传输途中偷听或者抓包的话,你的所有通信内容都会泄漏。

比较安全的方法是将通信内容加密在发送给对方。加密方法有两种,对称加密和非对称加密。

对称加密

对称加密指的是加密和解密用同一个密钥。

但是在通信之前,客户端和服务端是不会有这样同一把密钥的。需要其中一方将密钥发送给对方。

在整个传输过程没有任何验证操作,所以黑客也可以截取到这把密钥从而破译出加密的内容。

所以纯对称加密是不安全的。

非对称加密

非对称加密指的是加密和解密用不同的密钥。可以是用私钥加密,公钥解密,也可以是用公钥加密,私钥解密。

但是会有这种情况。服务端拥有私钥和公钥,将公钥发给客户端。既然客户端可以获得公钥,黑客也可以获得公钥。那么服务端发送给客户端的所有内容黑客也是可以解读的。

客户端用公钥加密发送给服务端不受影响,因为黑客手上没有服务器的私钥。所以纯非对称加密也是不安全的。

传输密钥的过程

登场人物介绍

图解传输密钥的过程

HTTPS采用对称加密来加密通信内容,所用的密钥称为A。用非对称加密来加密密钥A再发送给对方(有点绕)。只要密钥A不落入他人手中,那传输的数据就不会被别人破译。

那么问题来了,要如何安全的将这把密钥送到对方手上呢?

我们来看密钥的传输过程

为什么HTTPS是可靠的?

HTTPS是可靠的,因为它解决了三个问题。

1、加密通信,即使别人获取到了信息也没法复原成原来的信息。

2、防止中间人攻击。黑客没法冒充服务端。因为在第2步,服务端给了客户端一个CA证书。

  • 如果客户端验证了这个证书,说明这个证书和公钥是由服务端发来的且真实可靠。
  • 如果客户端验证不了这个证书,就说明这个证书不可靠,有可能是假的。

3、CA证书的公信力。CA证书需要由公司或者个人发出申请,再通过邮箱验证等方法验证域名存在。避免了黑客冒充网站获取证书的可能。

在技术层面上,CA机构的公钥是写在操作系统或者浏览器里的。只有用CA机构的私钥加密的内容才能完成解密。确保了证书的确是CA机构发行的。

密钥的作用

最后让我们再来回顾一下每一把密钥的作用

来源于:https://juejin.im/post/6844904160089882631

文章分享自微信公众号:
IT老哥

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!

作者:站在书脊之上
原始发表时间:2020-09-21
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • 一张图告诉你为什么是服务网关。

    网关服务是单一访问点,并充当多项服务的代理。服务网关启用了跨所有服务的路由转发、过滤和公共处理等。 在微服务实践中远不止这点功能,它可以做到统一接入、流量管控、...

    Java技术栈
  • 是学习Java还是Python?一张图告诉你!

    从图表中,你可以很容易看出 Java 比 Python 罗嗦。在 Java 中读一个文件要写10行代码,而在 Python 中只要两行。这一点是 Python ...

    华章科技
  • 是学习Java还是Python?一张图告诉你!

    Java 和 Python 一直都是两种很火很强大的编程语言,对于刚开始起步学习编程的同学来说,会迷惑且最经常问的问题是,我该学 Java 还是 Python,...

    小莹莹
  • 为什么 HTTPS 是安全的?

    都知道 HTTPS 安全,可是为什么安全呢?看小电影还是浏览正常网站,一定要检查是不是 HTTPS 的,HTTP有可能被中间人攻击和拦截,下面就是详细的 HTT...

    逆锋起笔
  • 为什么 HTTPS 是安全的?

    HTTP 协议是通过客户端和服务器的请求应答来进行通讯,目前协议由之前的 RFC 2616 拆分成立六个单独的协议说明(RFC 7230、RFC 7231、R...

    Vincent-yuan
  • 为什么 HTTPS 是安全的?

    HTTP 协议是通过客户端和服务器的请求应答来进行通讯,目前协议由之前的 RFC 2616 拆分成立六个单独的协议说明(RFC 7230、RFC 7231、RF...

    民工哥
  • 为什么 HTTPS 是安全的?你知道吗?

    都知道 HTTPS 安全,可是为什么安全呢?看小电影还是浏览正常网站,一定要检查是不是 HTTPS 的,HTTP有可能被中间人攻击和拦截,下面就是详细的 HTT...

    程序员白楠楠
  • 一张图告诉你什么是系统架构师

    这张图从架构师的综合能力、岗位认识、岗位职责等方面,清楚的画出了作为一个架构的基本准则。人人都想成为架构师,可作为架构你达到了上面的要求了吗? 系统架构师是个神...

    Java技术栈
  • HTTPS 为什么是安全的(下)?

    在上篇文章 HTTPS 为什么是安全的 ? (上) 中,我们借由 如何安全的传输信息 这个问题,引出了 HTTPS 中常用的密码学工具,对称加密,非对称加密,哈...

    路遥TM
  • OfferKiller | Https 为什么是安全的?(上)

    Https 为什么是安全的? 这可以说是一个高频面试题了。但要完全说明白这个问题,你需要具备一些前置知识。所以在本篇中,暂时不会涉及到 Https 的具体通信流...

    路遥TM
  • 为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的?

    而HTTPS的出现正是解决这些问题,HTTPS是建立在SSL之上,其安全性由SSL来保证

    @超人
  • 机器学习的脉络,一张概括图告诉你

    经济基础决定上层建筑,这句话不论怎么看都是合适的,同样也是用于机器学习领域,基础决定深度。本文是入门级的统计学习(统计机器学习)的概要和统计学习全部内容的基础

    机器人网
  • 为什么你的大脑那么喜欢图表?13张图告诉你

    大数据文摘
  • 一张图告诉你最流行的 7 个 JavaScript框架特点

    原图出自:https://dzone.com/articles/top-7-javascript-frameworks

    葡萄城控件
  • 用两张图告诉你,为什么你的App会卡顿?

    有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? 知道Android究竟是如何在屏幕上显示我们期望的画面的? 对A...

    范蠡
  • 用两张图告诉你,为什么你的App会卡顿?

    知道setContentView()之后发生了什么? 知道Android究竟是如何在屏幕上显示我们期望的画面的? 对Android的视图架构有整体把握。 学会从...

    用户1269200
  • 生动形象的告诉你为什么需要https以及非对称加密的作用!

    最近在看《图解http》这本书,非常喜欢书中那种卡通风格的诠释,我自己也在想我可不可以把一些晦涩抽象的知识转化为一些简洁直观的例子,帮助新人快速理解一些知识点,...

    玖柒的小窝
  • 阿里十年的Java架构师用一张图告诉你什么是系统架构师

    这张图从架构师的综合能力、岗位认识、岗位职责等方面,清楚的画出了作为一个架构的基本准则。人人都想成为架构师,可作为架构你达到了上面的要求了吗?

    美的让人心动
  • 一张图告诉你,自学编程和科班程序员的差别在哪

    自学编程的程序员,似乎都处于鄙视链的底端,而计算机专业的毕业生,似乎天然存在着一种优越感。自学编程和科班程序员的差距,到底有多大?这也是即将“入坑”的编程爱好...

    java爱好者

扫码关注腾讯云开发者

领取腾讯云代金券