http和https的异同点和优缺点

一、https的工作原理

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

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

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

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

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

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

二、HTTPS 的优缺点

优点
  • 可以对数据进行加密和身份验证,保护用户的隐私和安全。

  • 可以防止中间人攻击,避免数据被窃听或篡改。

  • 可以提高网站的信誉和排名,增加用户的信任和访问量。

  • 可以支持更多的功能和扩展,如 HTTP/2,WebRTC,Service 等。

缺点
  • 需要购买和维护数字证书,增加网站的成本和复杂度。

  • 需要消耗更多的服务器资源和网络带宽,降低网站的性能和速度。

  • 需要适配不同的浏览器和操作系统,解决兼容性和更新问题。

  • 可能影响一些缓存和优化策略,如 CDN,SPDY 等。

三、HTTP 的优缺点

优点

  • 简单:HTTP 是一种文本协议,易于理解和实现。HTTP 的请求和响应都由起始行、首部字段和可选的消息主体组成,每个部分都有明确的语法规则。HTTP 的方法、状态码和首部字段都有标准化的定义,方便开发者遵循。

  • 灵活:HTTP 是一种无状态协议,即每个请求和响应都是独立的,不依赖于之前或之后的交互。这使得 HTTP 可以支持多种类型的资源,如 HTML、图片、视频、音频等,也可以支持多种类型的客户端,如浏览器、手机、物联网设备等。HTTP 还可以通过扩展首部字段或使用其他协议(如 HTTPS、WebSocket)来增加新的功能或安全性。

  • 通用:HTTP 是一种广泛使用的协议,几乎所有的网站和应用都基于 HTTP 进行通信。HTTP 也是一种开放的协议,任何人都可以参与其发展和改进。HTTP 的标准由 IETF(互联网工程任务组)和 W3C(万维网联盟)制定和维护,经过了多年的演进和更新,目前最新的版本是 HTTP/2。

缺点

HTTP 协议是无状态的,即每次请求都是独立的,服务器不会保存客户端的任何信息。HTTP 协议也是明文的,即请求和响应的内容都是未加密的,任何人都可以在网络上截获并查看。

这样就导致了 HTTP 协议的几个缺点:

  • 通信使用明文(不加密),内容可能会被窃听:由于数据是明文传输的,任何人都可以知道用户访问了哪些网站,浏览了哪些内容,甚至分析出用户的喜好、习惯等个人信息,这些信息可能被用于商业利益或其他目的,侵犯了用户的隐私权。

  • 不验证通信方的身份,因此有可能遭遇伪装:由于服务器不会保存客户端的状态,客户端每次请求都需要提供身份信息,如 Cookie 或 Session,这些信息也可能被攻击者截获或伪造,导致身份认证失败或被冒充。

  • 无法证明报文的完整性,所以有可能已遭篡改:由于数据是明文传输的,攻击者可以轻易地获取用户的敏感信息,如账号、密码、银行卡号等,或者篡改数据内容,造成用户或网站的损失。

相关推荐
上海云盾-小余1 天前
DDoS 攻击全解析:常见类型识别与分层防御思路
网络协议·tcp/ip·安全·ddos
不做菜鸟的网工1 天前
H3C 本地 Portal + AAA 认证 模拟配置实验
网络协议
W.W.H.1 天前
嵌入式常见的面试题1
linux·网络·经验分享·网络协议·tcp/ip
zmj3203241 天前
CAN + 以太网 + Wi-Fi + BLE + TCP/IP + MQTT +HTTP协议层级
网络·网络协议·tcp/ip
发光小北1 天前
IEC103 转 ModbusTCP 网关应用在什么场景?
网络·网络协议
BullSmall1 天前
Prometheus 如何配置监控 SSL 证书即将过期
网络协议·ssl·prometheus
robch1 天前
python3 -m http.server 8001直接启动web服务类似 nginx
前端·nginx·http
一只小鱼儿吖1 天前
长效代理IP:构建稳定高效的网络数据通
网络·网络协议·tcp/ip
以太浮标1 天前
华为eNSP模拟器综合实验之- DHCP、DNS、HTTP和FTP服务器配置案例Client-Server
linux·服务器·windows·http·华为·信息与通信
Vis-Lin1 天前
BLE 协议栈:L2CAP 信道详解
网络·物联网·网络协议·蓝牙·iot·ble