盖伦:狡诈恶徒!
前言
前言???是什么鬼?哦!是为了平时成绩!我们要写博客这些才能加平时分┭┮﹏┭┮好吧,这也是我第一次尝试写。许多方面也是不明白的。所以请多多见谅哈!好吧,下面我谈谈我对HTTP的认识吧!
一、HTTP是什么呢?
HTTP是英文单词“HyperText Transfer Protocol”的缩写,译为超文本传输协议。是的,它是一种传输协议。
HTTP协议是在Web上进行数据交换的基础,是一种“客户端-服务器端”协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
二、HTTP与HTTPS
1.HTTP的原理
HTTP被设计于上20世纪90年代初期,是一种可扩展的协议。它是应用层的协议,通过TCP,或者是TLS-加密的TCP连接来发送,理论上任何可靠的传输协议都可以使用。因为其良好的扩展性,时至今日,它不仅被用来传输超文本文档,还用来传输图片、视频或者向服务器发送如HTML表单这样的信息。HTTP还可以根据网页需求,仅获取部分Web文档内容更新网页。
2.HTTP存在的问题
在HTTP协议中有可能存在信息窃取或身份伪装等安全问题。使用HTTPS通信机制可以有效地防止这些问题,接下来,我们先来了解下 HTTP协议存在的哪些问题:
通信使用明文
HTTP报文使用明文方式发送。不具备加密的功能,所以也无法做到对通信整体(使用HTTP协议通信的请求和响应的内容)进行加密。
因此HTTP的明文协议会导致一系列的信息安全问题,数据泄露、数据篡改、流量劫持、钓鱼攻击等。
所有的通信数据都相当于在网络中"裸奔",通过一些技术手段,即可获取还原所传输的内容,这样就会导致数据信息泄露。
而且传输的信息可能被劫持,并进行篡改,而且无法得知信息是否被篡改,也就是说即使我问接收到信息,也无法确认其是否准确,完整等。
另外HTTP协议中的请求和响应不会对通信方进行确认。在HTTP协议通信时,由于不存在确认通信方的处理步骤,任何人都可以发起请求。另外,服务器只要接收到请求,不管对方是谁都会返回一个响应,任何人都可以伪造虚假服务器欺骗用户,实现“钓鱼欺诈”,用户无法察觉。
3.HTTPS
因此嘛,为解决上述问题就出现了HTTPS。HTTPS并非是应用层的一种新协议。只是HTTP通信接口部分用SSL和TLS协议代替而已。
在采用SSL后,HTTP就拥有了HTTPS的加密、证书和完整性保护这些功能。也就是说HTTP加上加密处理和认证以及完整性保护后即是HTTPS。
HTTPS 协议的主要功能基本都依赖于 TLS/SSL 协议,TLS/SSL 的功能实现主要依赖于三类基本算法:散列函数 、对称加密和非对称加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。
HTTPS 的缺点
1、HTTPS 协议握手阶段比较费时,会使页面的加载时间延长近。
2、HTTPS 连接缓存不如 HTTP 高效,会增加数据开销,甚至已有的安全措施也会因此而受到影响。
3、HTTPS 协议的安全是有范围的,在黑客攻击、拒绝服务攻击和服务器劫持等方面几乎起不到什么作用。
4、SSL 证书通常需要绑定 IP,不能在同一 IP 上绑定多个域名,IPv4 资源不可能支撑这个消耗。
5、成本增加。部署 HTTPS 后,因为 HTTPS 协议的工作要增加额外的计算资源消耗,例如 SSL 协议加密算法和 SSL 交互次数将占用一定的计算资源和服务器成本。
6、HTTPS 协议的加密范围也比较有限。最关键的,SSL 证书的信用链体系并不安全,特别是在某些国家可以控制 CA 根证书的情况下,中间人攻击一样可行。
总结
http是一种协议,超文本传输协议。可以传输图片,视频,声音等。但是是明文传输,存在一系列信息安全问题
https不是一种新的技术,只是http加了一层安全保障,使其更安全,具有保密性。但是多了一个东西,效率就自然低了一些,成本也自然高一些。
原文链接: https://blog.csdn.net/howgod/article/details/89596638.
原文链接: https://blog.csdn.net/qq_38289815/article/details/80969419.