1. HTTP和HTTPS的基本概念

HTTP:是客户端和服务器端用来传递消息的一种网络超文本传输协议,是一个客户端和服务器端请求和应答的标准(TCP)。

HTTPS:HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

形象解释:你给你的好基友发消息“八点开黑”,消息会先用密匙将“八点开黑”加密成一串字符如“LyINZi8*91%!Cs”,再传输,你的

好基友收到消息后密匙再解密成“八点开黑”!中间只有你和你的好基友能看到“八点开黑”,只要密匙足够安全,第三者也只看的

到“LyINZi8*91%!Cs”这串字符!

2. HTTP与HTTPS的区别

1. 费用不同。https协议需要申请证书,一般免费证书较少,因而需要一定费用。

2. 传输协议不同。http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

3. 端口不同。http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

4. 安全性不同。http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

3. https工作原理:https=http+TLS/SSL

客户端在使用HTTPS方式与Web服务器通信时有以下几个步骤,如图所示。

  (1)客户使用https的URL访问Web服务器,要求与Web服务器建立SSL连接。

  (2)Web服务器收到客户端请求后,会将网站的证书信息(证书中包含公钥)传送一份给客户端。

  (3)客户端的浏览器与Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。

  (4)客户端的浏览器根据双方同意的安全等级,建立会话密钥,然后利用网站的公钥将会话密钥加密,并传送给网站。

  (5)Web服务器利用自己的私钥解密出会话密钥。

  (6)Web服务器利用会话密钥加密与客户端之间的通信。

加密算法一般分为对称加密与非对称加密

对称加密

优点:

  1. 加密强度高,很难被破解
  2. 计算量小,仅为非对称加密计算量的 0.1%

缺点:

  1. 无法安全的生成和管理密钥
  2. 服务器管理大量客户端密钥复杂

非对称加密

优点:安全

缺点:

  1. 性能低下,CPU 计算资源消耗巨大。
  2. 加密内容长度有限制,不能超过公钥的长度。

HTTP和HTTPS的理解相关推荐

  1. 【转载】这是我看过最好的对HTTPS的理解

    [转载]这是我看过最好的对HTTPS的理解 首先申明,这篇文章并非原创.而是最近想去研究一下https的原理,所以上网查阅了一大堆资料和文档,其实看来看去都是差不多的,直到发现了这一篇.为作者打个电话 ...

  2. HTTP 与 HTTPS 的理解

    区别:HTTP 是明文传输的,容易泄漏信息,所以大多数应用都会升级为 HTTPS HTTP 底层是用 TCP 传输的,HTTPS 就是在 TCP 和 HTTP 之间加了一层加密和认证的协议,这一层叫做 ...

  3. 实施经验-https证书理解

    文章目录 先从一个需求案例说起 流程梳理 在https协议中是如何使用证书的 概念梳理 openssl参数说明 参考: 先从一个需求案例说起 给甲方的web服务需要使用https,是部署在内网的,连域 ...

  4. 深入理解 Android Https

    前言 大家都知道https相比http增加的是安全性. 怎么增加安全性呢? 就是加密和解密步骤. 下面来详细谈谈对https的理解和在Android中的使用. 两种加密 加密方式分两种,对称加密和非对 ...

  5. 也许,这样理解 HTTPS 更容易!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 翟志军 来源 | showme.codes/2 ...

  6. 轻松理解https,So easy!

    作者:翟志军 https://showme.codes/2017-02-20/understand-https/ 本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样.但是这 ...

  7. 也许,这样理解 HTTPS 更容易

    本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样.但是这并不代表HTTPS的真实设计过程.在阅读本文时,你可以尝试放下已有的对HTTPS的理解,这样更利于"还原 ...

  8. 也许,这样理解HTTPS更容易

    https://juejin.im/post/5b8367b1e51d453884361fc3 摘要: 本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样.但是这并不代表H ...

  9. 最深刻最通俗的HTTPS 原理详解,图文并茂

    摘要:本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样.但是这并不代表HTTPS的真实设计过程.在阅读本文时,你可以尝试放下已有的对HTTPS的理解,这样更利于" ...

最新文章

  1. UITableView中selectRowAtIndexPath: animated:scrollPosition滚动到指定Row
  2. 用java模仿钉钉_java接入钉钉机器人(附源码)
  3. cs224n第二讲词向量表示:word2vec
  4. xss challenge 解题思路(1-3)
  5. ceph操作相关命令整合
  6. python pyecharts 折线图_python数据大屏pyecharts库2020.8.31
  7. 极路由 1S 使用经验
  8. 推荐+1置顶+1(分享、讨论、实现)通用软件注册功能之建立有效的软件保护机制...
  9. Spark standalone 模式下的集群部署
  10. ffdshow 源代码分析 9: 编解码器有关类的总结
  11. 8b 10b c语言编码,2012年计算机等级二级C语言章节习题及答案(10)
  12. alarm之后调用sleep会这样
  13. 有关各浏览器内核的区别
  14. i2cdetect i2cdump i2cget i2cset用法
  15. 深度学习在时空数据的应用
  16. 想学IT的必看!不断提升自己创造溢价的能力,附带学习经验
  17. 软件服务器 配置文件,服务器生成软件配置文件
  18. 绕过SSL双向校验抓取Soul App的数据包
  19. 查看jvm的运行参数
  20. 浅谈电弧光保护在10kV变电站高压室的应用方案

热门文章

  1. webstorm ubuntu下安装
  2. CCF201909-3 字符画(100分)【文本处理】
  3. Bailian2940 求和【进制+迭代】
  4. UVA10929 You can say 11【大数模除】
  5. 负数的移位、有符号数的移位转换为无符号数的移位
  6. 圆周率 π 的研究、π 的等式
  7. 整数、区间与区间端点
  8. 从 0.99999... = 1 到芝诺悖论
  9. Python 数据结构与算法 —— Kruskal 算法
  10. Trick(十四)—— 判断是否序列中所有的元素都相同