一、HTTP和HTTPS的基本概念

HTTP(HyperText Transfer Protocol:超文本传输协议):是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从Web服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。

HTTPS(HyperText Transfer Protocol Secure:超文本传输安全协议):是以安全为目标的HTTP通道,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。


二、HTTP和HTTPS的区别

1、HTTPS协议需要到CA(Certificate Authority,数字证书认证机构)申请证书,一般免费证书较少,因而需要一定费用。

2、HTTP是超文本传输协议,信息是明文传输,数据是不加密的,而HTTPS则是具有安全性的SSL加密传输协议。

3、HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,HTTP是80端口,HTTPS是443端口。

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


三、HTTP的工作原理


1.客户端与服务器建立TCP连接(三次握手)
2.连接成功后,客户端发送请求给服务器
3.服务器接收到客户端发送的请求后作出相应,并将响应信息发送给客户端
4.服务器发送完响应信息后,就会断开TCP连接,因此HTTP是无状态的,下一次访问的时候不会知道之前访问的过程
5.客户端接收到响应信息,浏览器进行解析,将html文件解析后呈现一个网页在浏览器上


四、HTTPS的工作原理


1、客户端发起 HTTPS 请求

用户在浏览器里输入一个 https 网址,然后连接到 server 的 443 端口。

2、传送证书

采用 HTTPS 协议的服务器必须要有一套数字证书,这套证书其实就是一对公钥和私钥,公钥就像是一把锁头,私钥是一个钥匙,只有这个私钥才能打开公钥,其他人打不开自然就看不到里边的内容了

服务器将证书发送给客户端,这个证书其实就是公钥,只是包含了很多信息,如证书的颁发机构,过期时间等等。

3、客户端解析证书

这部分工作是有客户端的TLS来完成的,首先会验证公钥是否有效,如果发现异常,则会弹出一个警告框,提示证书存在问题。

4、生成随机密钥

如果证书没有问题,那么就生成一个随机对称密钥
5、加密对称密钥

公钥对该对称密钥进行加密,就好像上面说的,把随机值用锁头锁起来,这样除非有钥匙,不然看不到被锁住的内容。

6、传送加密信息

将加密后的对称密钥发送给服务器,目的就是让服务端得到对称密钥,以后客户端和服务端的通信就可以通过这个对称密钥进行加密解密了。

7、服务端解密信息

服务端用私钥解密后,得到了客户端传过来的对称密钥,然后把内容通过该密钥进行对称加密,所谓对称加密就是,将信息和对称密钥通过某种算法混合在一起,这样除非知道对称密钥,不然无法获取内容,而正好客户端和服务端都知道这个密钥,所以只要加密算法够彪悍,对称密钥够复杂,数据就够安全。

8、传输加密后的信息

这部分信息是服务器用对称密钥加密后的信息,可以在客户端被还原。

9、客户端解密信息

客户端用之前生成的对称密钥解密服务段传过来的信息,于是获取了解密后的内容,整个过程第三方即使监听到了数据,也束手无策。


五、HTTPS的优缺点

1.优点:

(1)使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器;

(2)HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。

(3)HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。

(4)谷歌曾在2014年8月份调整搜索引擎算法,并称“比起同等HTTP网站,采用HTTPS加密的网站在搜索结果中的排名将会更高”。

2.缺点:

(1)HTTPS协议握手阶段比较费时,会使页面的加载时间延长近50%,增加10%到20%的耗电;

(2)HTTPS连接缓存不如HTTP高效,会增加数据开销和功耗,甚至已有的安全措施也会因此而受到影响;

(3)SSL证书需要钱,功能越强大的证书费用越高,个人网站、小网站没有必要一般不会用。

(4)SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗。

(5)HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

HTTP和HTTPS的工作原理及区别相关推荐

  1. LoRa终端两种入网方式OTAA与ABP工作原理的区别

    在之前的文章中介绍了"LoRa终端如何以OTAA方式入网TTN服务器",现在为大家介绍LoRa终端两种入网方式OTAA与ABP工作原理的区别,此文来自微信公众号"小七说L ...

  2. HTTPS的工作原理

    内容有点多,但干货满满,相信我,你一定会有收获! 在正式开始讲解https之前我们还得先搞清楚两个概念:什么是对称加密,以及什么是非对称加密? 对称加密的介绍 对称加密比较简单,就是客户端和服务器共用 ...

  3. HTTPS 的工作原理

    我们都知道 HTTPS 能够加密信息,以免敏感信息被第三方获取,所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用 HTTPS 协议. http与https区别 https工作原理 1.客户端发 ...

  4. HTTP与HTTPS及其工作原理及三次握手、四次挥手、常见状态码

    一.HTTP与HTTPS HTTP:超文本传输协议,是一个客户端和服务器端请求和应答的标准,用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少,常基于TCP/I ...

  5. NAPT和NAT的工作原理及其区别

    NAPT 网络地址端口转换NAPT 网络地址端口转换NAPT(Network Address Port Translation)是人们比较熟悉的一种转换方式.NAPT普遍应用于接入设备中,它可以将中小 ...

  6. 面试:说说 HTTPS 的工作原理?

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 |  stephanietang.github.i ...

  7. 理解 HTTPS 的工作原理

    转自 https://linux.cn/article-6804-1.html 目标读者:理解HTTP协议,对称和非对称加密,想要了解HTTPS协议的工作原理. 读完本文,你能明白 什么是HTTPS, ...

  8. 计算机原理eprom,eprom eeprom和flash储存器的工作原理及区别

    先介绍板答题存储器:据写入特性,可粗略地将半导体存储器划分为随机存取存储器(RAM,Random-Access Memory)和只读存储器(ROM,Read-Only Memory)两类.更进一步则可 ...

  9. 固态硬盘、机械硬盘工作原理和区别(内附接口知识)

    一.概述 在了解两种硬盘的工作原理之前,我们要了解下计算机的工作原理.计算机是怎么样给我们提供服务的呢?                                                 ...

  10. RTK与网络RTK技术的工作原理和区别对比

    一.RTK RTK是一种利用GPS载波相位观测值进行实时动态相对定位的技术.进行RTK测量时,至少需配备2台GPS接收机,一台安装在基准站上,另一台在基准站附近进行实时相对定位,进而根据基准站的坐标求 ...

最新文章

  1. 手机自动化测试:appium源码分析之bootstrap八
  2. BUUCTF-Reverse:helloword + findit(安卓逆向)
  3. mysql 2005开发版,SQL server 2019 开发版下载
  4. arrays中copyof复制两个数组_C语言100题集合026-使用指针交换两个数组中的最大值
  5. 论文浅尝 | 基于属性embeddings的跨图谱实体对齐
  6. 【云栖大会】与马云一起开启“飞天·进化”之旅
  7. 底部按钮吸附_知乎的药丸按钮(二)我的 iOS 实现
  8. SNIFE 和 std::enable_if
  9. html横向导入word
  10. 关于禅道项目管理软件
  11. Prescan入门教程之避坑笔记:初学者初用
  12. MySQL 数据归档清理方法
  13. AltiumDesigner之Logo制作
  14. 汽车精准用油,您真的了解吗?
  15. 如何解决Mac上网速度很慢的问题(多种可能分析)
  16. android相机拍照
  17. .AI域名价值如何?5G时代投资.AI域名怎么样?
  18. 腾讯2019春招一面(电话面试)
  19. Python 判断字符串是否包含中文汉字
  20. android异步加载图片并缓存到内存和sd卡上,Android批量图片加载经典系列——采用二级缓存、异步加载网络图片...

热门文章

  1. 标准误计算机excel公式,关于excel计算标准差SD和标准误SE的方法
  2. 快速破解IntelliJ IDEA
  3. linux装流量宝,流量宝下载_流量宝官方APP手机最新版本下载安装 - 风云下载
  4. 简明python教程最新pdf_《简明Python教程》PDF高清 初学者的极佳教材 限时免费领取...
  5. fanuc系统网络服务器,FANUC的网络配置.doc
  6. 【模拟电路】PID简介
  7. less最后一页 linux_linux中less命令使用
  8. Flutter 添加 armeabi-v7a 本地库出现的一些问题
  9. 您需要计算机管理员权限,安装需要管理员权限,教您怎么设置安装软件需要管理员权限...
  10. EasyCVR通过Ehome协议接入部分设备显示离线排查报告