美文网首页
小白如何理解HTTPS的原理

小白如何理解HTTPS的原理

作者: 前端的搬运工 | 来源:发表于2019-08-14 15:43 被阅读0次

先来一张图

HTTPS原理(图解在下面)

本文不打算长篇大论去讲解各种HTTPS相关的理论知识,只是综合网上各位大佬们的HTTPS详解,作一个简短的要点总结。水平有限,如有疏漏之处欢迎指正。

什么是HTTPS?

HTTPS = HTTP + SSL/TSL,是HTTP协议的安全版。

SSL/TSL又是什么?

SSL的全称是Secure Sockets Layer,即安全套接层协议,是为网络通信提供安全及数据完整性的一种安全协议。SSL最新的版本是3.0。

TLS的全称是Transport Layer Security,即安全传输层协议,是建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。

SSL/TSL = 非对称加密(如RSA、ECC) +  对称加密(如AES、DES) +  散列算法(如MD5

为什么要用HTTPS?

因为HTTP在“裸奔”(明文传输,不安全)。

对数据进行加密,并建立一个信息安全通道,来保证传输过程中的数据安全

对网站服务器进行真实身份认证


图解文字说明

①:一般【客户端】首先发起请求,例如请求网站www.thinktxt.com/, 生成一个随机数(RandomC),携带支持的TSL版本、加密算法等信息发送至【服务端】。

②:【服务端】收到请求,返回证书、一个随机数(RandomS)、协商加密算法。

③:【客户端】拿到证书后开始进行校验,验证其合法性。客户端通过本地浏览器或操作系统内置的权威第三方认证机构的CA证书进行验证,一个证书包含域名、证书编号、公钥、有效期等信息,证书编号是在服务器管理员通过第三方证书机构申请证书的时候,第三方机构用他们的私钥对证书编号进行加密存入证书,根据编号生成方法生成证书编号(证书本身携带了生成证书编号的方法),与CA证书公钥解密得出的证书编号进行对比,验证不通过或者证书过期等情况就提示存在风险(浏览器的红色警告),验证通过则进行下一步。

④:【客户端】生成一个随机数(PreMaster Key),此时已经有第三个随机数了,根据三个随机数(RandomC、RandomS、PreMaster Key)按照双方约定的算法生成用于后面会话的同一把的“会话密钥”。

⑤:【客户端】将随机数(PreMaster Key)通过公钥加密后发送至【服务端】。

⑥:【服务端】收到密文后用私钥进行解密,得到随机数(PreMaster Key),此时服务端也拥有了三个随机数,根据三个随机数按照事先约定的加密算法生成用于后面会话的同一把的“会话密钥”。

⑦:【服务端】计算此前所有内容的握手消息hash值,并用“会话密钥”加密后发送至客户端用于验证。

⑧:【客户端】解密并计算握手消息的hash值,如果与服务端发来的hash一致,此时握手过程结束。

⑨:验证通过后,开始正常的加密通信。

以上就是HTTPS的原理解析,希望能够对大家有所帮助!

文章转载至掘金作者txBoy

相关文章

  • 小白如何理解HTTPS的原理

    先来一张图 本文不打算长篇大论去讲解各种HTTPS相关的理论知识,只是综合网上各位大佬们的HTTPS详解,作一个简...

  • https原理的理解

    本文是对原理的阐述,不涉及具体的加密流程 缘起 http由于是明文传输,在传输敏感信息的时候是很不安全的,所以要对...

  • SLL Pinning

    要理解SSL pinning的工作原理,首先要知道Https工作原理,中间人如何进行攻击在说HTTPS之前先说说什...

  • HTTPS原理解析

    HTTP是什么 超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是互...

  • https原理解析

    原文地址:http://www.zixiong.org/blog/2018/02/12/https.html ht...

  • 轻松理解HTTPS原理

    众所周知,http协议是以明文进行传输的,http在明文的传输过程中很容易出现数据被拦截、篡改、监控的危险,这种情...

  • HTTPS 原理解析

    一、前言 在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输...

  • HTTPS原理解析

    原理 步骤一 客户端行为操作:生成随机数randoms加密算法清单传输:randoms,加密算法清单已有数据:ra...

  • 简单理解 HTTPS 原理

    转自:http://blog.csdn.net/sean_cd/article/details/6966130HT...

  • https 原理理解

    非原创 原链接 概念 协议 1、HTTP 协议(HyperText Transfer Protocol,超文本传输...

网友评论

      本文标题:小白如何理解HTTPS的原理

      本文链接:https://www.haomeiwen.com/subject/kvngjctx.html