在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
HTTP与HTTPS有什么区别和联系?简单来说,HTTPS就是HTTP的加强版,这样子是不是好理解多了?当然啦,仔细分析下来,HTTP与HTTPS的区别和联系不止于此,下面是详细分析。
一、基本概念
1、HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息。
HTTP默认工作在 TCP 协议 80 端口,用户访问网站http://打头的都是标准 HTTP 服务。
HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。
2、HTTPS(Hypertext Transfer Protocol Secure:超文本传输安全协议)是一种透过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包。HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。
HTTPS默认工作在 TCP 协议443端口,它的工作流程一般如以下方式:
1、TCP 三次同步握手
2、客户端验证服务器数字证书
3、DH 算法协商对称加密算法的密钥、hash 算法的密钥
4、SSL 安全加密隧道协商完成
5、网页以加密的方式传输,用协商的对称加密算法和密钥加密,保证数据机密性;用协商的hash算法进行数据完整性保护,保证数据不被篡改。
二、HTTP和HTTPS的联系:
一般情况,HTTP 和 HTTPS 是相同的,因为采用的基础协议一样。作为 HTTP 或 HTTPS浏览器,设立连接到 Web 服务器指定的端口,当服务器接收到请求,通过资源定位器 URI 模式,资源可以被唯一指定,此时便返回一个状态码以及响应消息,这个响应消息可能是用户需要的信息信息、也有可能是指示某个错误信息(由http协议状态码得到某种 )。
三、HTTP与HTTPS 区别
HTTP明文传输,数据都是未加密的,安全性较差,HTTPS(SSL+HTTP) 数据传输过程是加密的,安全性较好。
使用 HTTPS 协议需要到 CA(Certificate Authority,数字证书认证机构) 申请证书,一般免费证书较少,因而需要一定费用。证书颁发机构如:Symantec、Comodo、GoDaddy 和 GlobalSign 等。
HTTP页面响应速度比 HTTPS 快,主要是因为 HTTP 使用 TCP 三次握手建立连接,客户端和服务器需要交换 3 个包,而 HTTPS除了 TCP 的三个包,还要加上 ssl 握手需要的 9 个包,所以一共是 12 个包。
HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是 80,后者是 443。
HTTPS其实就是建构在 SSL/TLS 之上的 HTTP 协议,所以,要比较HTTPS比HTTP要更耗费服务器资源。
以上就是HTTP与HTTPS的区别和联系,大家都弄清楚了吗?
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python知识点讲解之Python冒号的使用
本文要讲解Python的知识点是Python冒号。我们都知道,逗号“,”分隔各个维度,“:”表示各个维度内的切片,只有:表示取这个维度的全部值。那么下面小编有一个例子来详细分析下Python冒号的使用。
16537
2019-08-01 20:41:32
Python技巧整理之文件读写
大家在使用Python的时候,如果知道一些小技巧,那么工作效率会有很大的提高。小编整理了关于文件读写的Python技巧,都是干货,希望能对大家有一点小小的帮助吧!
6580
2019-08-07 17:17:53
30岁零基础没学历学Python怎么样?30岁学习Python晚吗?
30岁零基础没学历学Python怎么样?30岁学习Python晚吗?任何时候开始都不晚。30岁开始学习Python听起来年纪有点大,大家认为编程上了年纪学习编程语言是一个劣势。想在三十岁的时候通过学习Python来谋求一份IT程序员工作,则需要有一个系统的计划。
4649
2020-03-20 14:24:22
装饰器是什么?为什么要学习装饰器?
装饰器用于拓展原来函数功能的一种函数,在不改变原函数名或类名的情况下给函数增加新的功能。给已有函数增加额外功能的函数,它本质上就是一个闭包函数,我们学习得主要目的是掌握装饰器的语法格式。
2672
2021-12-06 11:11:22
HTML基本结构包含几个部分?
完整HTML页面包括HTMLDOCTYPE声明、title标题、head、网页编码声明等内容。学习HTML需要能够写出html的基本结构并学以致用。
5355
2021-12-09 15:39:59