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,这些信息也可能被攻击者截获或伪造,导致身份认证失败或被冒充。

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

相关推荐
XUEYUAN52124 天前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
CHENKONG_CK4 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
2501_916007474 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
Lsetea4 天前
证书没到期却报certificate has expired:OpenSSL定位中间证书与系统时间
运维·https·ssl证书·openssl·证书链
z落落4 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
2501_916008894 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
SDWAN_Cheap4 天前
HTTPS到底加密了什么?
https·数据加密
曼巴UE54 天前
UE5 客户端 需要的网络同步概念总结(3 )-事件同步 RPC 以及三种调用方式
网络·c++·网络协议·学习·rpc·ue5
captain3764 天前
HTTP(2)
java·网络·http·java-ee
开开心心就好4 天前
安卓手写文字生成工具,多种纸张一直免费
网络·网络协议·tcp/ip·leetcode·智能手机·电脑·模拟退火算法